将CRX添加到Chrome网上应用店后,Google会向crx添加目录_metadata
。较早版本的Chrome不了解此目录(在Chrome 27上测试过)并抛出此错误:
Package is invalid. Details: 'Cannot load extension with file or directory name
_metadata. Filenames starting with "_" are reserved for use by the system.'.
如果您尝试在较旧版本的Chrome上安装此扩展程序,则可以看到此错误:https://chrome.google.com/webstore/detail/allcast-receiver/hjbljnpdahefgnopeohlaeohgkiidnoe
一个很好的解释:https://groups.google.com/a/chromium.org/d/msg/chromium-apps/huDqSeaQx3Q/Z5GOMxA7lQIJ
有解决方法吗?这使得无法支持旧版Chrome。
答案 0 :(得分:12)
您可以尝试解压缩CRX(将后缀名称更改为" .zip"如果需要),然后在chrome中:设置 - >扩展程序检查"开发人员模式",选择"加载未解压缩的扩展程序。"并选择提取的文件夹。
P.S。
我不得不重命名以" _"开头的文件夹。 (下划线)并删除该行
"default_locale":"en",
从清单JSON开始,以便工作
答案 1 :(得分:11)
您 - 作为扩展程序开发人员 - 无法解决此错误,因为该目录是由Chrome网上应用店(CWS)添加的。您可以通过不使用CWS分发扩展程序来解决此问题,但大多数Chrome用户都无法使用该扩展程序,因为Google已经积极尝试阻止用户从CWS外部获取扩展程序。
CWS团队是唯一可以解决该问题的团队。如果用户代理不支持该目录(Chrome 30-),它们应该在没有_metadata
目录的情况下提供crx文件。正在https://code.google.com/p/chromium/issues/detail?id=377278上跟踪此错误。到目前为止,回应是:
我们无法修复旧版Chrome。 Webstore端跟踪b / 15176392,但不太可能将支持扩展回Chrome 30。
明确问题以获得更新通知,并表示您确实希望修复错误。如果有足够的用户/开发者抱怨,那么Google 可能会修复该错误。
答案 2 :(得分:3)
此答案适用于您:
的CRX文件 _locales
文件夹不应该造成问题。只要清单包含default_locale
密钥,Chrome就会按预期加载解压缩的扩展程序。
_metadata
是有问题的文件夹。它包含所有扩展文件的加密哈希,以防止篡改这些文件,并由CWS自动添加。这在解压缩扩展的上下文中没有意义,并且没有其他用途,因此只需要删除此文件夹。
答案 3 :(得分:0)
有些人发现重置工作。一些人发现清空回收站的工作原理。没有人为我工作。我重新安装chrome也没用。
相反,这对我有用(与Xan说的相同):我下载.crx文件,解压缩,删除文件夹
_metadata
然后手动安装。这对我有用。
答案 4 :(得分:0)
删除_METADATA文件夹,我确认您下载管理员将作为您的扩展之一添加。