我正在尝试开发一个扩展程序,以便在Mac上运行FirefoxDeveloperEdition(它不需要签名)。
我关注了#34;你的第一个WebExtension"使用"加载临时插件"时,指南和一切正常。但是当我尝试打包它并使用"安装附件从文件"安装它时,它显示"这个附加组件无法安装,因为它似乎已损坏"。
我压缩所有文件(borderify.js,manifest.json,图标,没有容器文件夹)并将后缀更改为.xpi。这是正确的包装方式吗?一些答案提到应该有一个" install.rdf" ?,如果是这样,我该如何创建该文件?似乎没有关于文档的指南。
更新:
我已尝试使用mac内置"压缩n项",xpi file,也尝试使用web-ext build
,xpi file。他们都得到了相同的错误提醒。
更新2 :
我在xpinstall.signatures.required
中设置了about:config
false。
我的firefox版本是:51.0a2(2016-10-17)(64位)
是否有人能够加载未签名的xpi?它是Firefox的bug吗?还是只是我?
答案 0 :(得分:7)
如果您要安装 .xpi ,则需要提供ID。 将其添加到manifest.json根目录
"applications": {
"gecko": {
"id": "borderify@mozilla.org",
}
}
没有特别详细记录,特别是this页面告诉“在Firefox中安装附加组件时会为其分配一个随机生成的临时ID。”但是,这似乎仅适用于安装about:debugging
- xpi安装仍需要ID。它可能是任何字符串,因为无论如何你都在DevEdition上运行它并禁用了检查。
不言而喻,这对Firefox的发布不起作用。
P.S:Ctrl-Shift-J将打开一个浏览器控制台,该控制台通常包含有关扩展程序安装错误的其他信息 - 下次可能有用。