1

我的后台脚本中的以下网络扩展代码在background.jsOpera 和 Chrome 上运行良好,在安装、更新和卸载时触发了相应的网页,但在 Firefox 中没有任何作用。此处显示为兼容 - https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/runtime/onInstalled

Manifest.json有:

"background" : {
    "scripts" : ["includes/background.js"]
},

background.js有 :

//CHECK INSTALL, UPDATE, UNINSTALL
chrome.runtime.onInstalled.addListener(function (details) {
    if (details.reason == "install") {
        chrome.tabs.create({
            url : "https://www.example.com/install.html"
        });
    }

    if (details.reason == "update") {
        chrome.tabs.create({
            url : "https://www.example.com/update.html"
        });
    }
});

chrome.runtime.setUninstallURL("http://www.example.com/uninstall.html");
4

1 回答 1

2

通过about:debugging. 该文件指出

临时安装的附加组件不会触发此事件。

因此,该事件不会触发。您需要将附加组件安装为普通的非临时附加组件。您有多种方法可以做到这一点。官方的方式是安装Firefox Developer Edition,或者Firefox Nightly并设置xpinstall.signatures.requiredfalse. about:config如果您想在 Firefox 的发布版本中这样做,您可以完全禁用 Firefox 中的附加签名检查。链接的答案(也在下面列出)中描述了这样做的过程。您还可以通过以下文档链接中的信息将您的附加组件安装为普通附加组件。

于 2017-03-27T06:01:45.677 回答