runtime.onInstalled
当扩展首次安装、扩展更新到新版本以及浏览器更新到新版本时触发。
请注意,runtime.onInstalled
与 management.onInstalled
不同。runtime.onInstalled
事件仅针对您的扩展触发。browser.management.onInstalled
事件针对任何扩展触发。
语法
js
browser.runtime.onInstalled.addListener(listener)
browser.runtime.onInstalled.removeListener(listener)
browser.runtime.onInstalled.hasListener(listener)
事件具有三个函数
addListener(listener)
-
向此事件添加监听器。
removeListener(listener)
-
停止监听此事件。
listener
参数是要移除的监听器。 hasListener(listener)
-
检查是否为此事件注册了
listener
。如果正在监听,则返回true
,否则返回false
。
addListener 语法
参数
function
-
此事件发生时调用的函数。该函数将传递以下参数
details
-
具有以下属性的对象
id
可选-
string
。更新的导入共享模块扩展的 ID。仅当reason
值为shared_module_update
时才存在。 previousVersion
可选-
string
。刚刚更新的扩展的先前版本。仅当reason
值为update
时才存在。 reason
-
一个
runtime.OnInstalledReason
值,说明此事件正在分发的理由。 temporary
-
boolean
。如果附加组件是临时安装的,则为真。例如,使用 Firefox 中的“about:debugging”页面或使用 web-ext run。否则为假。
浏览器兼容性
BCD 表仅在浏览器中加载
示例
当扩展安装时,记录安装原因并打开 https://example.com
js
function handleInstalled(details) {
console.log(details.reason);
browser.tabs.create({
url: "https://example.com",
});
}
browser.runtime.onInstalled.addListener(handleInstalled);
示例扩展
注意:此 API 基于 Chromium 的 chrome.runtime
API。此文档来自 Chromium 代码中的 runtime.json
。