【发布时间】:2012-03-07 07:41:59
【问题描述】:
我正在创建一个 Firefox 扩展,并且我有一个包含扩展文件的文件夹。每次我想测试时,我都必须压缩它,将扩展名更改为 .xpi,将其拖放到 Firefox 窗口,等待 3 秒,单击安装按钮并重新启动浏览器。
我已经制作了一个批处理文件来压缩文件夹并更改扩展名,但是是否可以使用脚本完全重新安装它,而无需拖放例程?
【问题讨论】:
标签: firefox firefox-addon
我正在创建一个 Firefox 扩展,并且我有一个包含扩展文件的文件夹。每次我想测试时,我都必须压缩它,将扩展名更改为 .xpi,将其拖放到 Firefox 窗口,等待 3 秒,单击安装按钮并重新启动浏览器。
我已经制作了一个批处理文件来压缩文件夹并更改扩展名,但是是否可以使用脚本完全重新安装它,而无需拖放例程?
【问题讨论】:
标签: firefox firefox-addon
编辑 (2017-06-25):从 Firefox 57 开始,经典扩展(包括下面提到的扩展自动安装程序)将停止工作。这意味着您现在的选择是:
about:debugging 并将您的扩展加载为临时插件。这将允许在您进行更改时单击重新加载它 - 无论是对包还是对未打包的目录,两者都是可能的。原始答案仅供参考,仅适用于 Firefox 56。
实际上,这就是我前一阵子创建Extension Auto-Installer 的原因。在您的测试浏览器中安装扩展并将以下内容添加到您的批处理脚本中:
wget --post-file=extension.xpi http://localhost:8888/
这将在浏览器中自动安装您的扩展程序,并在必要时重新启动它。如果需要对扩展进行签名,它将提供将扩展安装为临时插件,仅适用于当前浏览器会话。
由于您似乎使用的是 Windows,因此您将需要 Wget for Windows 或类似的命令行工具。
【讨论】:
about:config 并将xpinstall.signatures.required 的值更改为false,然后这个解决方案才能起作用。另一种选择是使用jpm sign 命令对xpi 进行签名。
我知道这个问题已经有一个公认的答案,但是: 您不一定非要这样做。
{8956a28d-xxxx-xxxx-xxxx-xxxxxxxxxxxx})注意:在隐式安装后首次运行 Firefox 时,系统会询问您是否允许此安装;就这样吧。
P.S. 拥有 Extension Developer 插件是个好主意;它会让事情变得简单(例如,一键重启 Firefox)。
【讨论】: