Firefox 扩展在安装时打开页面

Posted

技术标签:

【中文标题】Firefox 扩展在安装时打开页面【英文标题】:Firefox extension opening a page on install 【发布时间】:2010-10-31 19:52:42 【问题描述】:

我注意到一些 Firefox 扩展在安装后会在您重新启动浏览器后打开一个页面,例如 StumbleUpon toolbar。

这对于显示更新说明并为用户提供一些教程类型信息很有用。

当用户在安装后第一次重启浏览器时,如何在 Firefox 插件中打开一个新页面?

【问题讨论】:

【参考方案1】:

虽然可能有更好的方法,但我不知道...... 您可以使用首选项系统来跟踪它是否是第一次运行/更新

检查首选项是否存在,如果不存在,请打开页面,使用当前扩展版本号创建首选项。 如果首选项存在,请对照当前扩展版本号检查它,如果它们不同,则假定它是更新并打开页面。 (假设您希望页面在每次更新时都打开)

var prefs = Components.classes["@mozilla.org/preferences-service;1"]
            .getService(Components.interfaces.nsIPrefService);
prefs.QueryInterface(Components.interfaces.nsIPrefBranch2);

if ((prefs.getPrefType("extensions.yourextensionhere.yourprerference") == PREF_INVALID)
    || (prefs.getCharPref("extensions.yourextensionhere.yourprerference") != this.version)) 
    //open page and...
    prefs.setCharPref("extensions.yourextensionhere.yourprerference",this.version)
 

EDIT.. 版本检查使用 == 而不是 != 应该有的

【讨论】:

【参考方案2】:

我没有直接使用 firefox 扩展,但我想像在持久内存中存储标志(布尔值)的方式(但是您存储用户首选项)。安装后第一次启动浏览器时,不会设置标志,因此您会显示帮助页面并设置标志。下次firefox重启时,flag已经设置好了,所以不要打开帮助页面。

如果您希望它在每次更新扩展程序时显示一个页面,则存储版本而不是布尔值,并在每次启动时检查当前版本是否大于存储的版本。

【讨论】:

以上是关于Firefox 扩展在安装时打开页面的主要内容,如果未能解决你的问题,请参考以下文章

打开页面时,Firefox 会打开一个下载对话框

firefox无法安装未通过验证的扩展

puppeteer-firefox 开启扩展

屏蔽firefox浏览器404页面的广告

firefox 如何设置关闭之后再打开都是上次浏览时未关闭的页面

FireFox火狐备份配置书签密码扩展文件方法