我的后台脚本background.js
中的以下网络扩展程序代码在Opera和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");
答案 0 :(得分:2)
您已通过about:debugging
将加载项安装为temporary add-on。 documentation states:
暂时安装的附加组件不会触发此事件。
因此,事件不会发生。您需要将加载项安装为普通的非临时加载项。您有多种方法可以这样做。官方方式是安装Firefox Developer Edition或Firefox Nightly并将xpinstall.signatures.required
设置为false
中的about:config
。如果您想在Firefox的发布版本中执行此操作,可以entirely disable add-on signature checking in Firefox。在链接的答案(也在下面列出)中描述了这样做的过程。您还可以使用下面的“文档”链接中的信息来帮助您将加载项安装为普通加载项。