问题描述
最近给自己的Firefox写了一个插件,在about:debugging页面以临时附加组件的方式测试时,可以正常安装与运行,但尝试在about:addons页面正式安装到附加附件管理器时,被提示“该附加组件无法安装,因为它有可能已损坏”,安装失败。
原因
经过搜索,得知问题主要处在扩展的签名上。Firefox会阻止未经 Mozilla 数字签署和验证的第三方附加组件,以可以保护用户不受恶意软件和浏览器劫持者威胁。对于我一个仅仅是写个小插件供自己使用的人,一本正经地去申请签名未免有些犯不着。
解决方法
第一步
- 在Firefox开发者版(普通版Firefox据说此法无效)地址栏中输入
about:config
,弹出有关修改首选项的风险的警告,接受风险继续访问。
在新页面中搜索
xpinstall.signatures.required
首选项,将该首选项的值修改为
false
,完成后关闭
about:config
页面(千万不要随便乱改别的!),重新启动浏览器。
- 据网上搜索,到这一步就可以正常加载未经签名的扩展,但是我的好像还是不行。
第二布
- 打开自己扩展中的manifest.json文件,添加如下代码:
"applications": { "gecko": { "id": "X@Y" } },
其中X和Y自己随便改成别的字符串。
- 重新加载插件,成功安装。
总结
以上方法在我本地Firefox开发者版浏览器测试有效,不确定其他环境下是否行得通。如果无效概不负责,勿喷。
参考文章:
https://github.com/WaterfoxCo/Waterfox/issues/955
FireFox浏览器安装插件时提示:“该附加组件无法安装,因为它有可能已损坏”_该组件已下载但无法安装它似乎已损坏-CSDN博客