2012-03-07 186 views
3

我正在创建一个Firefox扩展,我有一个文件夹的扩展名。每当我想测试我必须压缩它,将扩展名更改为.xpi,将其拖放到Firefox窗口,等待3秒钟,单击安装按钮并重新启动浏览器。Firefox扩展自动安装

我已经制作了一个批处理文件,可以压缩文件夹并更改扩展名,但是是否可以用脚本完全重新安装它,而不用拖动&拖放例程?

回答

4

编辑(2017-06-25):从Firefox 57开始,经典扩展(包括下面提到的扩展自动安装程序)将停止工作。这意味着您的选择现在是:

  • 转到about:debugging并将您的扩展加载为临时插件。无论何时进行更改 - 无论是打包还是解压目录,这都可以通过单击进行重新加载,两者都有可能。
  • 使用web-ext command line tool,它可以将您的扩展作为临时插件安装在命令行中。它也可以观察扩展文件的变化并自动重新加载。

参考原来的答复,只会工作到火狐56

其实,这就是为什么我创建Extension Auto-Installer前一阵子。在您的测试浏览器安装扩展程序,下面添加到您的批处理脚本:

wget --post-file=extension.xpi http://localhost:8888/ 

在浏览器这将自动安装您的扩展,如果必要重新启动。如果需要签名扩展,它将提供将扩展作为临时插件安装,仅适用于当前浏览器会话。

由于您似乎正在使用Windows,您将需要Wget for Windows或类似的命令行工具。

+0

它工作顺利,谢谢! – 2012-03-07 08:01:09

+0

在解决方案可以工作之前,我不得不去'about:config'并将'xpinstall.signatures.required'的值更改为'false'。另一种选择是使用[jpm sign](https://developer.mozilla.org/en-US/Add-ons/SDK/Tools/jpm#jpm_sign)命令来签署xpi。 – 2016-04-10 05:00:01

4

我知道这个问题已经有了一个可接受的答案,但是: 您不一定非得这样做。

  1. 打开帮助菜单。
  2. 选择故障排除信息
  3. 查找配置文件文件夹显示点击下一个文件夹按钮即可。这会打开你的Firefox个人资料文件夹。
  4. 扩展文件夹中,使用您的扩展名或名称创建一个新文件夹。 (像这样:{8956a28d-xxxx-xxxx-xxxx-xxxxxxxxxxxx}
  5. 只需编辑您的扩展文件,然后重新启动浏览器。更改将立即生效!

注意:你这隐含安装后运行Firefox的第一次,你会被要求允许这种安装;只是允许它。

P.S.这是一个好主意,让扩展开发人员加载项;它会让事情变得简单(例如,只需点击一下重新启动Firefox)。

+0

如果您正在开发一个无重启扩展,很快就会重新启动Firefox。 – 2013-09-11 06:49:09

+0

@WladimirPalant:相反,您不必重新安装组件!我用过这种方法,它非常酷! (使用* Extension Developer *更好) – Javid 2013-09-11 09:17:29

+1

是的,你不需要重新安装 - 但你仍然需要重新启动浏览器,通常不需要重启扩展。你会对抗各种浏览器缓存。如果你在浏览器仍在运行的时候编辑文件,你会得到非常不一致的结果。我自己使用了这种方法,但被这些问题困扰,并创建了扩展自动安装程序。 – 2013-09-11 09:32:58