runtime.onInstalled

拡張機能が最初にインストールされた時や、新しいバージョンへ更新された時、ブラウザーが新しいバージョンへ更新された時に発火します。

runtime.onInstalledmanagement.onInstalled (en-US) と同じではありません。runtime.onInstalled イベントはあなたの拡張機能でのみ発火されます。browser.management.onInstalled イベントは、どの拡張機能でも発火されます。

構文

js
browser.runtime.onInstalled.addListener(listener)
browser.runtime.onInstalled.removeListener(listener)
browser.runtime.onInstalled.hasListener(listener)

イベントには 3 つの関数があります:

addListener(callback)

このイベントにリスナーを追加します。

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 (en-US) の値で、このイベントが発火した理由を表します。

temporary

boolean 型。拡張機能が一時的にインストールされた場合は True です。例えば、 Firefox で "about:debugging" ページ を使ったり、 web-ext run を使った場合です。それ以外の場合は False です。

ブラウザーの互換性

BCD tables only load in the browser

拡張機能がインストールされた時に、理由をログ出力し、 https://example.com を開きます:

js
function handleInstalled(details) {
  console.log(details.reason);
  browser.tabs.create({
    url: "https://example.com",
  });
}

browser.runtime.onInstalled.addListener(handleInstalled);

Example extensions

メモ: この API は Chromium の chrome.runtime API に基づいています。また、このドキュメントは runtime.json における Chromium のコードに基づいています。