如何打包未签名的Firefox WebExtension?

Keo*_*ros 2 firefox firefox-addon firefox-addon-webextensions

我正在尝试开发一个在Mac上运行FirefoxDeveloperEdition(不需要签名)的扩展.

我按照"您的第一个WebExtension"指南,使用"加载临时加载项"时一切正常.但是当我尝试打包并使用"从文件安装附加组件"安装它时,它显示"无法安装此附加组件,因为它似乎已损坏". 在此输入图像描述

我压缩所有文件(borderify.js,manifest.json,图标,没有容器文件夹)并将后缀更改为.xpi.这是正确的包装方式吗?一些答案提到应该有一个"install.rdf"?,如果是这样,我该如何创建该文件?似乎没有关于文档的指南.

更新:

我已经尝试使用mac内置"压缩n项",xpi文件,也尝试使用web-ext build,xpi文件.他们都得到了相同的错误提醒.

更新2:

xpinstall.signatures.required假装了about:config.

我的firefox版本是:51.0a2(2016-10-17)(64位)

有没有人能够加载未签名的xpi?它是Firefox的bug吗?还是只是我?

Ana*_*nov 7

如果要安装.xpi,则需要提供ID.将其添加到manifest.json根目录

"applications": {
  "gecko": {
    "id": "borderify@mozilla.org",
  }
}
Run Code Online (Sandbox Code Playgroud)

它没有特别好的文档,特别是这个页面告诉"当你在Firefox中安装它时,将为附加组件分配一个随机生成的临时ID." 但是,这似乎只适用于安装over about:debugging-xpi安装仍需要ID.它可能是任何字符串,因为无论如何你都在DevEdition上运行它并禁用了检查.

不言而喻,这对Firefox的发布不起作用.

PS:Ctrl-Shift-J将打开一个浏览器控制台,该控制台通常包含有关扩展程序安装错误的其他信息 - 下次可能有用.