Firefox 安装扩展后,如何显示提示?

Firefox 安装扩展后,如何显示提示?,firefox,firefox-addon,installation,Firefox,Firefox Addon,Installation,当我的插件安装时,它需要提示用户获取用户名或类似的东西。在那之后,它存储它,不应该再问。我将把这个提示放在哪里安装.rdfbrowser.xul?尝试使用addonlistener 或者通过使用首选项:没有明确的机制在安装扩展时运行代码-您只需在第一次运行扩展时执行即可。最简单的方法是检查用户名是否已设置。如果不是,则显示提示 不建议显示模式对话框,这些对话框对用户来说非常烦人,尤其是当它们在Firefox启动时突然出现时。您应该改为在选项卡中打开页面。有一点复杂:Firefox启动时可能正在恢

当我的插件安装时,它需要提示用户获取用户名或类似的东西。在那之后,它存储它,不应该再问。我将把这个提示放在哪里<代码>安装.rdf
browser.xul

尝试使用addonlistener


或者通过使用首选项:

没有明确的机制在安装扩展时运行代码-您只需在第一次运行扩展时执行即可。最简单的方法是检查用户名是否已设置。如果不是,则显示提示

不建议显示模式对话框,这些对话框对用户来说非常烦人,尤其是当它们在Firefox启动时突然出现时。您应该改为在选项卡中打开页面。有一点复杂:Firefox启动时可能正在恢复上一个会话。如果过早打开页面,会话还原机制可能会取代它。所以你应该等待,像这样的事情应该会起作用:

Components.utils.import(“resource://gre/modules/XPCOMUtils.jsm");
Components.utils.import(“resource://gre/modules/Services.jsm");
var观察员={
观察:功能(主题、主题、数据)
{
Services.obs.removeObserver(“sessionstore windows restored”,this);
var browser=window.getBrowser();
browser.loadOneTab(“chrome://...“,{inBackground:false});
},
查询接口:XPCOMUtils.generateQI([
组件。接口。观察者,
Components.interfaces.nsSupportsWakReference
])
};
Services.obs.addObserver(“会话存储窗口已还原”,observer,true);

最后一个复杂的问题是,您的代码可能是从浏览器窗口覆盖运行的,这意味着如果恢复的会话包含多个窗口,则会有多个代码实例。您可能希望上面的代码只运行一次,而不是在每个浏览器窗口中打开第一个运行页面。所以你必须以某种方式协调,也许是通过。一个稍微复杂但更好的解决方案是在扩展中安装一个插件—代码模块只加载一次,这样就不会出现协调问题。

实际上,在安装扩展时,您的扩展(以及您编写的优秀插件侦听器)不太可能运行;)