我正在为chome webstore的chrome扩展程序创建zip包,并且难以确定zip包中需要的manifest.json
格式。
我的第一次尝试是将我的扩展程序中的manifest.json
(编译为.crx
文件)复制到zip包中,因此zip包的内容
manifest.json
myextension.crx
但是这种方法会导致在尝试在chrome中安装扩展程序时无法加载后台脚本的问题。
我的第二次尝试是剥离清单json,只留下一些字段,如名称,描述和图标。似乎我的第二次尝试是成功的,因为我的扩展可以安装。
我的方法是否正确?请指教。
答案 0 :(得分:0)
清单文件的正确格式记录在案here。话虽如此,我怀疑这个问题与你的清单文件无关,而是你的zip文件的结构。提交zip文件时,请确保您压缩目录的内容,而不是目录本身。
E.g。以下结构可以:
manifest.json
background.js
...
以下是不确定:
extension/manifest.json
extension/background.js
您可能创建了以下情况,不确定,因为它将后台脚本声明为“background.js”,而它实际上位于“extension / background.js”:
manifest.js containing "background": {"scripts": ["background.js"] }
extension/background.js
你的第二次尝试可能有效,因为你以正确的方式压缩了文件。
答案 1 :(得分:0)
实际上你应该上传一个只包含扩展根目录的ZIP档案(不应该CRX
编辑)。根据 "Get Started" guide :
创建包含manifest.json和图标的目录的ZIP存档。在Windows上,您可以通过右键单击myapp并选择菜单项Send to>来执行此操作。压缩(zipped)文件夹。在Mac OS X上,按住Control键并单击myapp,然后选择“压缩”“myapp”。
如果您想使用命令行,可以输入:
<强>
zip -r myapp.zip myapp
强>
注意: ZIP存档不应包含仅扩展程序根目录的内容,而应包含根目录本身(当然包含其所有内容)。< / p>
(顺便说一句,我不知道为什么你的第二次尝试有效 - 根据它不应该的文件。)
<强>更新强>
在自己尝试之后,这两种方法似乎都有效
最后,上传包含您的扩展程序内容的ZIP存档,并不任何CRX
ed内容。谷歌将自己生产CRX。