runtime
This module provides information about your extension and the environment it's running in.
It also provides messaging APIs enabling you to:
- Communicate between different parts of your extension. For advice on choosing between the messaging options, seeChoosing between one-off messages and connection-based messaging.
- Communicate with other extensions.
- Communicate with native applications.
In this article
Types
runtime.PortRepresents one end of a connection between two specific contexts, which can be used to exchange messages.
runtime.MessageSenderContains information about the sender of a message or connection request.
runtime.PlatformOsIdentifies the browser's operating system.
runtime.PlatformArchIdentifies the browser's processor architecture.
runtime.PlatformInfoContains information about the platform the browser is running on.
runtime.PlatformNaclArchThe native client architecture. This may be different from
PlatformArchon some platforms.runtime.RequestUpdateCheckStatusResult of a call to
runtime.requestUpdateCheck().runtime.OnInstalledReasonThe reason that the
runtime.onInstalledevent is being dispatched.runtime.OnPerformanceWarningCategoryThe category of warning that dispatched the
runtime.onPerformanceWarningevent.runtime.OnPerformanceWarningSeverityThe severity of warning that dispatched the
runtime.onPerformanceWarningevent.runtime.OnRestartRequiredReasonThe reason that the
runtime.onRestartRequiredevent is being dispatched.
Properties
runtime.lastErrorThis value is set when an asynchronous function has an error condition that it needs to report to its caller.
runtime.idThe ID of the extension.
Functions
runtime.getBackgroundPage()Retrieves theWindow object for the background page running inside the current extension.
runtime.openOptionsPage()Opens your extension'soptions page.
runtime.getContexts()Gets details about the contexts associated with the extension.
runtime.getFrameId()Gets the frame ID of any window global or frame element.
runtime.getManifest()Gets the completemanifest.json file, serialized as an object.
runtime.getURL()Given a relative path from themanifest.json to a resource packaged with the extension, returns a fully-qualified URL.
runtime.setUninstallURL()Sets a URL to be visited when the extension is uninstalled.
runtime.reload()Reloads the extension.
runtime.requestUpdateCheck()Checks for updates to this extension.
runtime.connect()Establishes a connection from a content script to the main extension process, or from one extension to a different extension.
runtime.connectNative()Connects the extension to a native application on the user's computer.
runtime.sendMessage()Sends a message to event listeners within your extension or a different extension. Similar to
runtime.connectbut only sends a single message, with an optional response.runtime.sendNativeMessage()Sends a message from an extension to a native application.
runtime.getPlatformInfo()Returns information about the current platform.
runtime.getBrowserInfo()Returns information about the browser in which this extension is installed.
runtime.getPackageDirectoryEntry()Returns a DirectoryEntry for the package directory.
Events
runtime.onStartupFired when a profile that has this extension installed first starts up. This event is not fired when an incognito profile is started.
runtime.onInstalledFired 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.
runtime.onSuspendSent to the event page just before the extension is unloaded. This gives the extension an opportunity to do some cleanup.
runtime.onSuspendCanceledSent after
runtime.onSuspendto indicate that the extension won't be unloaded after all.runtime.onUpdateAvailableFired when an update is available, but isn't installed immediately because the extension is currently running.
runtime.onBrowserUpdateAvailableDeprecatedFired when an update for the browser is available, but isn't installed immediately because a browser restart is required.
runtime.onConnectFired when a connection is made with either an extension process or a content script.
runtime.onConnectExternalFired when a connection is made with another extension.
runtime.onUserScriptConnectFired when a connection is made with a user script registered by the extension.
runtime.onMessageFired when a message is sent from either an extension process or a content script.
runtime.onMessageExternalFired when a message is sent from another extension. Cannot be used in a content script.
runtime.onUserScriptMessageFired when a message is sent from a user script registered by the extension.
runtime.onPerformanceWarningFired when a runtime performance issue is detected for the extension.
runtime.onRestartRequiredFired when the device needs to be restarted.
Example extensions
Browser compatibility
Note:This API is based on Chromium'schrome.runtime API. This documentation is derived fromruntime.json in the Chromium code.