【问题标题】:Firefox extension auto installationFirefox 扩展自动安装
【发布时间】:2012-03-07 07:41:59
【问题描述】:

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

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

【问题讨论】:

    标签: firefox firefox-addon


    【解决方案1】:

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

    • 转到about:debugging 并将您的扩展加载为临时插件。这将允许在您进行更改时单击重新加载它 - 无论是对包还是对未打包的目录,两者都是可能的。
    • 使用web-ext command line tool,它可以从命令行安装您的扩展作为临时插件。它还可以监视扩展文件的更改并自动重新加载。

    原始答案仅供参考,仅适用于 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 进行签名。
    【解决方案2】:

    我知道这个问题已经有一个公认的答案,但是: 您不一定非要这样做。

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

    注意:在隐式安装后首次运行 Firefox 时,系统会询问您是否允许此安装;就这样吧。

    P.S. 拥有 Extension Developer 插件是个好主意;它会让事情变得简单(例如,一键重启 Firefox)。

    【讨论】:

    • 如果您正在开发无需重启的扩展程序,那么一直重启 Firefox 很快就会变得非常烦人。
    • @WladimirPalant:相反,您根本不必重新安装组件!我用过这个方法,非常酷! (使用 Extension Developer 会更好)
    • 是的,您不需要重新安装 - 但您仍然需要重新启动浏览器,这对于无需重新启动的扩展程序通常是不必要的。您将与各种浏览器缓存作斗争。如果您在浏览器仍在运行时编辑文件,您将得到非常不一致的结果。我自己使用了这种方法,但对这些问题感到非常恼火,并创建了 Extension Auto-Installer。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-16
    • 1970-01-01
    • 1970-01-01
    • 2016-02-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多