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 thatruntime.onInstalled
is not the same asmanagement.onInstalled
. Theruntime.onInstalled
event is fired only for your extension. Thebrowser.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(listener)
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. Returnstrue
if it is listening,false
otherwise.
addListener syntax
Parameters
function
The function called when this event occurs. The function is passed these arguments:
details
An object with the following properties:
id
Optionalstring
. The ID of the imported shared module extension that updated. This is present only if thereason
value isshared_module_update
.previousVersion
Optionalstring
. The previous version of the extension just updated. This is only present if thereason
value isupdate
.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 usingweb-ext run. False otherwise.
Examples
When the extension is installed, log the install reason and openhttps://example.com:
function handleInstalled(details) { console.log(details.reason); browser.tabs.create({ url: "https://example.com", });}browser.runtime.onInstalled.addListener(handleInstalled);
Example extensions
Browser compatibility
Note:This API is based on Chromium'schrome.runtime
API. This documentation is derived fromruntime.json
in the Chromium code.