runtime
Этот модуль предоставляет информацию о вашем расширении и среде, в которой оно работает.
Он также предоставляет API для обмена сообщениями, позволяя:
- Обмениваться сообщениями между разными частями вашего расширения. Для получения рекомендаций по выбору между вариантами обмена сообщениями см. Выбор между разовыми сообщениями и обменом сообщениями на основе подключения.
- Обмениваться сообщениями с другими расширениями.
- Обмениваться сообщениями с приложениями нативного уровня.
Типы
runtime.Port-
Представляет один конец соединения между двумя конкретными контекстами, который может использоваться для обмена сообщениями.
runtime.MessageSender-
Содержит информацию о отправителе сообщения или запроса подключения.
runtime.PlatformOs-
Идентифицирует операционную систему браузера.
runtime.PlatformArch-
Идентифицирует архитектуру процессора браузера.
runtime.PlatformInfo-
Содержит информацию о платформе, на которой работает браузер.
runtime.RequestUpdateCheckStatus-
Результат вызова
runtime.requestUpdateCheck(). runtime.OnInstalledReason-
Причина, по которой отправляется событие
runtime.onInstalled. runtime.OnRestartRequiredReason-
Причина, по которой отправляется событие
runtime.onRestartRequired.
Свойства
runtime.lastError-
Это значение устанавливается, когда асинхронная функция имеет ошибку, которую необходимо сообщить вызывающей стороне.
runtime.id-
Идентификатор расширения.
Функции
runtime.getBackgroundPage()-
Получает объект Window для страницы фона, работающей внутри текущего расширения.
runtime.openOptionsPage()-
Открывает страницу настроек вашего расширения.
runtime.getFrameId()-
Получает идентификатор фрейма любого глобального объекта окна или элемента фрейма.
runtime.getManifest()-
Получает полный файл manifest.json, сериализованный как объект.
runtime.getURL()-
Принимая относительный путь от manifest.json к ресурсу, упакованному с расширением, возвращает полную URL-адрес.
runtime.setUninstallURL()-
Устанавливает URL-адрес, который будет посещен при удалении расширения.
runtime.reload()-
Перезагружает расширение.
runtime.requestUpdateCheck()-
Проверяет наличие обновлений для этого расширения.
runtime.connect()-
Устанавливает соединение от скрипта контента до основного процесса расширения или от одного расширения к другому.
runtime.connectNative()-
Подключает расширение к приложению нативного уровня на компьютере пользователя.
runtime.sendMessage()-
Отправляет одно сообщение обработчикам событий внутри вашего расширения или другого расширения. Аналогично
runtime.connect, но отправляет только одно сообщение с необязательным ответом. runtime.sendNativeMessage()-
Отправляет одно сообщение от расширения приложению нативного уровня.
runtime.getPlatformInfo()-
Возвращает информацию о текущей платформе.
runtime.getBrowserInfo()-
Возвращает информацию о браузере, в котором установлено это расширение.
runtime.getPackageDirectoryEntry()-
Возвращает DirectoryEntry для каталога пакета.
События
runtime.onStartup-
Срабатывает, когда профиль, в котором установлено это расширение, запускается впервые. Это событие не срабатывает при запуске инкогнито-профиля.
runtime.onInstalled-
Срабатывает, когда расширение установлено впервые, когда расширение обновлено до новой версии и когда браузер обновлен до новой версии.
runtime.onSuspend-
Отправляется в страницу событий непосредственно перед выгрузкой расширения. Это даёт расширению возможность выполнить некоторые действия по очистке.
runtime.onSuspendCanceled-
Отправляется после
runtime.onSuspendдля указания, что расширение всё-таки не будет выгружено. runtime.onUpdateAvailable-
Срабатывает, когда доступно обновление, но оно не устанавливается немедленно, потому что расширение в данный момент работает.
-
runtime.onBrowserUpdateAvailableУстаревшая -
Срабатывает, когда доступно обновление для браузера, но оно не устанавливается немедленно, потому что требуется перезагрузка браузера.
runtime.onConnect-
Срабатывает при подключении к процессу расширения или скрипту контента.
runtime.onConnectExternal-
Срабатывает, когда установлено соединение с другим расширением.
runtime.onMessage-
Срабатывает, когда отправлено сообщение из процесса расширения или скрипта контента.
runtime.onMessageExternal-
Срабатывает, когда отправлено сообщение из другого расширения. Не может быть использовано в скрипте контента.
runtime.onRestartRequired-
Срабатывает, когда устройство необходимо перезагрузить.
Совместимость с браузерами
| Настольный | Мобильный | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | |
MessageSender |
26 | 14 | 45До версии 54, 'id' был внутренним UUID дополнения, а не идентификатором дополнения. |
? | 15 | 14 | ? | ? | 48До версии 54, 'id' был внутренним UUID дополнения, а не идентификатором дополнения. |
? | 15 | ? |
OnInstalledReason |
ДаИспользует 'chrome_update' вместо 'browser_update'. |
14Поддерживает только 'install' и 'update'. |
45 | ? | ДаИспользует 'chrome_update' вместо 'browser_update'. |
14Поддерживает только 'install' и 'update'. |
? | ? | 48 | ? | 15Поддерживает только 'install' и 'update'. |
? |
OnRestartRequiredReason |
Да | 79 | 45 | ? | Да | Нет | ? | ? | 48 | ? | Нет | ? |
PlatformArch |
Да | 79 | 45 | ? | Да | 14 | ? | ? | 48 | ? | 15 | ? |
PlatformInfo |
Да | 79 | 45 | ? | Да | 14 | ? | ? | 48 | ? | 15 | ? |
PlatformNaclArch |
Да | 79 | 45 | ? | Да | Нет | ? | ? | 48 | ? | Нет | ? |
PlatformOs |
Да | 79 | 45 | ? | Да | 14 | ? | ? | 48 | ? | 15 | ? |
Port |
26 | 15 | 45 | ? | 15 | 14 | ? | ? | 48 | ? | 15 | ? |
RequestUpdateCheckStatus |
Да | 79 | Нет | ? | Да | Нет | ? | ? | Нет | ? | Нет | ? |
connect |
26 | 14 | 45 | ? | 15 | 14 | ? | ? | 48 | ? | 15 | ? |
connectNative |
29 | 15 | 50 | ? | 16 | 14См. документацию на developer.apple.com о native messaging в Safari. |
? | ? | 68 | ? | 15См. документацию на developer.apple.com о native messaging в Safari. |
? |
getBackgroundPage |
22 | 14 | 45Если это вызывается со страницы, которая является частью окна приватного просмотра, например, боковая панель в приватном окне или всплывающее окно, открытое из приватного окна, то оно всегда будет возвращатьnull. |
? | 15 | 14 | ? | ? | 48Если это вызывается со страницы, которая является частью окна приватного просмотра, например, боковая панель в приватном окне или всплывающее окно, открытое из приватного окна, то оно всегда будет возвращатьnull. |
? | 15 | ? |
getBrowserInfo |
Нет | Нет | 51 | ? | Нет | Нет | ? | ? | 51 | ? | Нет | ? |
getFrameId |
Нет | Нет | 96 | ? | Нет | 16 | ? | ? | 96 | ? | 16 | ? |
getManifest |
22 | 14 | 45 | ? | 15 | 14 | ? | ? | 48 | ? | 15 | ? |
getPackageDirectoryEntry |
29 | 79 | Нет | ? | 16 | Нет | ? | ? | Нет | ? | Нет | ? |
getPlatformInfo |
29 | 79 | 45 | ? | 16 | 14 | ? | ? | 48 | ? | 15 | ? |
getURL |
22 | 14 | 45 | ? | 15 | 14 | ? | ? | 48 | ? | 15 | ? |
id |
22 | 14 | 45 | ? | 15 | 14 | ? | ? | 48 | ? | 15 | ? |
lastError |
ДаlastError не является объектом Error. Вместо этого, это простой объект с текстом ошибки в качестве строкового значения свойства 'message'. |
14 | 47 | ? | ДаlastError не является объектом Error. Вместо этого, это простой объект с текстом ошибки в качестве строкового значения свойства 'message'. |
14lastError устанавливается только если используется обратный вызов. Promise результаты, которые завершаются неудачей, будут отклонены с объектом Error. |
? | ? | 48 | ? | 15lastError устанавливается только если используется обратный вызов. Promise результаты, которые завершаются неудачей, будут отклонены с объектом Error. |
? |
onBrowserUpdateAvailable |
27 | 79 | Нет | ? | 15 | Нет | ? | ? | Нет | ? | Нет | ? |
onConnect |
26 | 14 | 45 | ? | 15 | 14 | ? | ? | 48 | ? | 15 | ? |
onConnectExternal |
26 | 79 | 54 | ? | 15 | Нет | ? | ? | 54 | ? | Нет | ? |
onInstalled |
22 | 14 | 52До версии 55, это событие не вызывается для временно установленных дополнений. |
? | 15 | 14 | ? | ? | 52До версии 55, это событие не вызывается для временно установленных дополнений. |
? | 15 | ? |
onMessage |
26 | 14 | 45 | ? | 15 | 14 | ? | ? | 48 | ? | 15 | ? |
onMessageExternal |
26 | 79 | 54 | ? | 15 |
15.4С Safari 15.4 данное событие также срабатывает в ответ на сообщение от веб-страниц, разрешённых вexternally_connectable.14Это событие срабатывает только в ответ на сообщение из приложения, содержащего расширение, а не веб-страниц или других расширений. |
? | ? | 54 | ? |
15.4С Safari 15.4 данное событие также срабатывает в ответ на сообщение от веб-страниц, разрешённых вexternally_connectable.15Это событие срабатывает только в ответ на сообщение от приложения, содержащего расширение, а не веб-страниц или других расширений. |
? |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
onRestartRequired |
29 | 79 | Нет | ? | 16 | Нет | ? | ? | Нет | ? | Нет | ? |
onStartup |
23 | 79 | 52 | ? | 15 | 14 | ? | ? | 52 | ? | 15 | ? |
onSuspend |
22 | 79 | 100Это событие не срабатывает до Firefox 106, когда доступны страницы событий. |
? | 15 | Нет | ? | ? | 100Это событие не срабатывает до Firefox 106, когда доступны страницы событий. |
? | Нет | ? |
onSuspendCanceled |
22 | 79 | 100Это событие не срабатывает до Firefox 106, когда доступны страницы событий. |
? | 15 | Нет | ? | ? | 100Это событие не срабатывает до Firefox 106, когда доступны страницы событий. |
? | Нет | ? |
onUpdateAvailable |
25 | 79 | 51 | ? | 15 | Нет | ? | ? | 51 | ? | Нет | ? |
openOptionsPage |
42 | 79 | 48 | ? | 29 | 14 | ? | ? | 57 | ? | 15 | ? |
reload |
25 | 15 | 51 | ? | 15 | 14 | ? | ? | 51 | ? | 15 | ? |
requestUpdateCheck |
25 | 79 | Нет | ? | 15 | Нет | ? | ? | Нет | ? | Нет | ? |
sendMessage |
26 | 14runtime.onMessage обработчики событий в представлениях расширений получают сообщения, которые они отправляли. |
45 | ? | 15 | 14 | ? | ? | 48 | ? | 15 | ? |
sendNativeMessage |
29 | 15 | 50 | ? | 16 | 14См. документацию на developer.apple.com по поводу native messaging в Safari. |
? | ? | 68 | ? | 15См. документацию на developer.apple.com по поводу native messaging в Safari. |
? |
setUninstallURL |
41 | 15 | 47 | ? | 28 | 14API существует, но не имеет эффекта. |
? | ? | 48 | ? | 15API существует, но не имеет эффекта. |
? |
Примеры расширений
- beastify
- content-script-register
- cookie-bg-picker
- devtools-panels
- export-helpers
- favourite-colour
- find-across-tabs
- imagify
- menu-demo
- mocha-client-tests
- native-messaging
- notify-link-clicks-i18n
- permissions
- runtime-examples
- store-collected-images
- user-script-register
- webpack-modules
Примечание: Этот API основан на API chrome.runtime Chromium. Данная документация получена из runtime.json кода Chromium.
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/runtime