自定义加载项安装程序



我正在用Firefox插件SDK编写一个插件,安装插件时我必须执行一些操作。有什么方法可以自定义附加组件安装程序吗?如果没有,我可以在第一次加载加载项时执行这些操作。我怎么能那样做?

不,安装程序只会安装扩展,没有什么花哨的。它将调用扩展的bootstrap.js中的install()方法,但插件SDK不会向插件公开该功能。

所以,如果你需要初始化一些东西,只需检查它是否已经初始化。例如,如果你需要在第一次运行时创建一个文件:当你的扩展启动时,检查该文件是否已经存在。如果没有,那么创建它。

如果无法轻松检测扩展是否已初始化,则可以使用首选项。类似这样的东西:

var {prefs} = require("simple-prefs");
if (!prefs.firstRunDone)
{
  prefs.firstRunDone = true;
  // Your first-run code goes here
}

main.js中有两个可用的函数exports.mainexports.onUnload,它们分别在加载项执行之前和卸载之前调用。你可以这样覆盖它们:

exports.main = function(options, callbacks)
{
    if (options.loadReason == 'install') {
        // init stuff
    }
}
exports.onUnload = function(reason)
{
    if (reason == 'uninstall') {
        // uninit stuff
    }
}

options中有更多的字段和多种可能的原因。来源。

相关内容

最新更新