runtime.onInstalled
Fired when the extension is first installed, when the extension is updated to a new version, and when the browser is updated to a new version.
Note that runtime.onInstalled
is not the same as management.onInstalled
. The runtime.onInstalled
event is fired only for your extension. The browser.management.onInstalled
event is fired for any extensions.
Syntax
browser.runtime.onInstalled.addListener(listener)
browser.runtime.onInstalled.removeListener(listener)
browser.runtime.onInstalled.hasListener(listener)
Events have three functions:
-
addListener(callback)
-
Adds a listener to this event.
-
removeListener(listener)
-
Stop listening to this event. The listener
argument is the listener to remove.
-
hasListener(listener)
-
Checks whether a listener
is registered for this event. Returns true
if it is listening, false
otherwise.
Parameters
-
function
-
The callback function called when this event occurs. The function will be passed the following arguments:
-
details
-
An object with the following properties:
id
Optional
-
string
. The ID of the imported shared module extension that updated. This is present only if the reason
value is shared_module_update
.
previousVersion
Optional
-
string
. The previous version of the extension just updated. This is only present if the reason
value is update
.
-
reason
-
An runtime.OnInstalledReason
value, stating the reason that this event is being dispatched.
-
temporary
-
boolean
. True if the add-on was installed temporarily. For example, using the "about:debugging" page in Firefox or using web-ext run. False otherwise.
Browser compatibility
|
Desktop |
Mobile |
|
Chrome |
Edge |
Firefox |
Internet Explorer |
Opera |
Safari |
WebView Android |
Chrome Android |
Firefox for Android |
Opera Android |
Safari on IOS |
Samsung Internet |
onInstalled |
22 |
14 |
52Before version 55, this event is not triggered for temporarily installed add-ons.
|
? |
15 |
14 |
? |
? |
52Before version 55, this event is not triggered for temporarily installed add-ons.
|
? |
15 |
? |
Examples
When the extension is installed, log the install reason and open https://example.com:
function handleInstalled(details) {
console.log(details.reason);
browser.tabs.create({
url: "https://example.com"
});
}
browser.runtime.onInstalled.addListener(handleInstalled);