chrome.extension

説明

chrome.extension API には、任意の拡張機能ページで使用できるユーティリティがあります。拡張機能とそのコンテンツ スクリプト間、または拡張機能間でのメッセージ交換がサポートされています。詳しくは、メッセージ パススルーをご覧ください。

ViewType

Chrome 44 以降

拡張機能ビューのタイプ。

列挙型

「タブ」

「popup」

プロパティ

inIncognitoContext

シークレット タブ内で実行されるコンテンツ スクリプトと、シークレット プロセス内で実行される拡張機能ページの場合、true です。後者は、incognito_behavior が「split」の拡張機能にのみ適用されます。

タイプ

ブール値

lastError

≤ MV2 Chrome 58 以降非推奨

runtime.lastError を使用してください。

非同期拡張機能 API でエラーが発生した場合に、コールバックの存続期間に設定します。エラーが発生していない場合、lastError は undefined になります。

タイプ

オブジェクト

プロパティ

  • メッセージ

    文字列

    発生したエラーの説明。

メソッド

getBackgroundPage()

フォアグラウンドのみ
chrome.extension.getBackgroundPage()

現在の拡張機能内で実行されているバックグラウンド ページの JavaScript の「window」オブジェクトを返します。拡張機能にバックグラウンド ページがない場合、null を返します。

戻り値

  • ウィンドウ | 未定義

getExtensionTabs()

≤ MV2 フォアグラウンドのみ 非推奨
chrome.extension.getExtensionTabs(
  windowId?: number,
)

extension.getViews {type: "tab"} を使用してください。

現在の拡張機能内で実行されているタブごとに、JavaScript の「window」オブジェクトの配列を返します。windowId が指定されている場合、指定されたウィンドウに接続されているタブの「window」オブジェクトのみが返されます。

パラメータ

  • windowId

    number(省略可)

戻り値

  • Window[]

    グローバル ウィンドウ オブジェクトの配列

getURL()

≤ MV2 Chrome 58 以降非推奨
chrome.extension.getURL(
  path: string,
)

runtime.getURL を使用してください。

拡張機能のインストール ディレクトリ内の相対パスを完全修飾 URL に変換します。

パラメータ

  • パス

    文字列

    拡張機能内のリソースへのパス(インストール ディレクトリを基準とする相対パス)。

戻り値

  • 文字列

    リソースの完全修飾 URL。

getViews()

フォアグラウンドのみ
chrome.extension.getViews(
  fetchProperties?: object,
)

現在の拡張機能内で実行されている各ページの JavaScript の「window」オブジェクトの配列を返します。

パラメータ

  • fetchProperties

    オブジェクト(省略可)

    • tabId

      number(省略可)

      Chrome 54 以降

      タブ ID に応じてビューを検索します。このフィールドを省略すると、すべてのビューが返されます。

    • type

      ViewType 省略可

      取得するビューのタイプ。省略すると、すべてのビュー(バックグラウンド ページとタブを含む)が返されます。

    • windowId

      number(省略可)

      検索対象の期間。省略すると、すべてのビューが返されます。

戻り値

  • Window[]

    グローバル オブジェクトの配列

isAllowedFileSchemeAccess()

Promise
chrome.extension.isAllowedFileSchemeAccess(
  callback?: function,
)

拡張機能の「file://」スキームへのアクセスの状態を取得します。これは、chrome://extensions ページからアクセスできる、ユーザーが拡張機能ごとに管理する [ファイルの URL へのアクセスを許可する] 設定に対応しています。

パラメータ

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      ブール値

      拡張機能が「file://」スキームにアクセスできる場合は true、それ以外の場合は false。

戻り値

  • Promise<boolean>

    Chrome 99 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

isAllowedIncognitoAccess()

Promise
chrome.extension.isAllowedIncognitoAccess(
  callback?: function,
)

シークレット モードへの拡張機能のアクセスの状態を取得します。これは、chrome://extensions ページからアクセスできる、ユーザーが拡張機能ごとに制御できる [シークレット モードで許可] 設定に対応しています。

パラメータ

  • callback

    function 省略可

    callback パラメータは次のようになります。

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      ブール値

      拡張機能がシークレット モードにアクセスできる場合は true、それ以外の場合は false。

戻り値

  • Promise<boolean>

    Chrome 99 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

sendRequest()

Promise &leq; MV2 非推奨
chrome.extension.sendRequest(
  extensionId?: string,
  request: any,
  callback?: function,
)

runtime.sendMessage を使用してください。

拡張機能内の他のリスナーに 1 つのリクエストを送信します。runtime.connect に似ていますが、レスポンスは省略可能で、1 つのリクエストのみを送信します。extension.onRequest イベントは、拡張機能の各ページで発生します。

パラメータ

  • extensionId

    文字列 省略可

    接続する拡張機能の拡張機能 ID。省略した場合、デフォルトは独自の拡張機能です。

  • リクエスト

    任意

  • callback

    function 省略可

    Chrome 99 以降

    callback パラメータは次のようになります。

    (response: any) => void

    • レスポンス

      任意

      リクエストのハンドラから送信された JSON レスポンス オブジェクト。拡張機能への接続中にエラーが発生した場合、コールバックは引数なしで呼び出され、runtime.lastError がエラー メッセージに設定されます。

戻り値

  • Promise<any>

    Chrome 99 以降

    Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。

setUpdateUrlData()

chrome.extension.setUpdateUrlData(
  data: string,
)

拡張機能の更新 URL で使用される ap CGI パラメータの値を設定します。Chrome 拡張機能ギャラリーでホストされている拡張機能の場合、この値は無視されます。

パラメータ

  • データ

    文字列

イベント

onRequest

&leq; MV2 非推奨
chrome.extension.onRequest.addListener(
  callback: function,
)

runtime.onMessage を使用してください。

拡張機能のプロセスまたはコンテンツ スクリプトからリクエストが送信されたときに呼び出されます。

パラメータ

  • callback

    関数

    callback パラメータは次のようになります。

    (request: any, sender: runtime.MessageSender, sendResponse: function) => void

    • リクエスト

      任意

    • sendResponse

      関数

      sendResponse パラメータは次のようになります。

      () => void

onRequestExternal

&leq; MV2 非推奨
chrome.extension.onRequestExternal.addListener(
  callback: function,
)

runtime.onMessageExternal を使用してください。

別の拡張機能からリクエストが送信されたときに呼び出されます。

パラメータ

  • callback

    関数

    callback パラメータは次のようになります。

    (request: any, sender: runtime.MessageSender, sendResponse: function) => void

    • リクエスト

      任意

    • sendResponse

      関数

      sendResponse パラメータは次のようになります。

      () => void