chrome.extension

説明

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

ViewType

Chrome 44 以降

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

Enum

プロパティ

inIncognitoContext

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

タイプ

boolean

lastError

≤ MV2 Chrome 58 以降で非推奨

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

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

タイプ

オブジェクト

プロパティ

  • message

    文字列

    発生したエラーの説明。

Methods

getBackgroundPage()

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

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

戻り値

  • ウィンドウ|未定義

getExtensionTabs()

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

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

現在の拡張機能で実行されている各タブに対応する JavaScript の「window」オブジェクトの配列を返します。windowId を指定すると、指定したウィンドウに関連付けられているタブの「window」オブジェクトのみを返します。

パラメータ

  • windowId

    number(省略可)

戻り値

  • ウィンドウ []

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

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 でビューを探します。このフィールドを省略すると、すべてのビューが返されます。

    • タイプ

      ViewType 省略可

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

    • windowId

      number(省略可)

      検索範囲を指定するウィンドウ。省略した場合は、すべてのビューが返されます。

戻り値

  • ウィンドウ []

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

isAllowedFileSchemeAccess()

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

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

パラメータ

  • callback

    関数(省略可)

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

    (isAllowedAccess: boolean)=>void

    • isAllowedAccess

      boolean

      拡張機能が「file://」スキームにアクセスできる場合は true、そうでない場合は false に設定します。

戻り値

  • Promise<boolean>

    Chrome 99 以降

    Promise は Manifest V3 以降でサポートされていますが、コールバックは下位互換性のために提供されています。同じ関数呼び出しで両方を使用することはできません。Promise は、コールバックに渡されたのと同じ型で解決されます。

isAllowedIncognitoAccess()

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

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

パラメータ

  • callback

    関数(省略可)

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

    (isAllowedAccess: boolean)=>void

    • isAllowedAccess

      boolean

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

戻り値

  • Promise<boolean>

    Chrome 99 以降

    Promise は Manifest V3 以降でサポートされていますが、コールバックは下位互換性のために提供されています。同じ関数呼び出しで両方を使用することはできません。Promise は、コールバックに渡されたのと同じ型で解決されます。

sendRequest()

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

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

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

パラメータ

  • extensionId

    string(省略可)

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

  • request

    任意

  • callback

    関数(省略可)

    Chrome 99 以降

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

    (response: any)=>void

    • レスポンス

      任意

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

戻り値

  • Promise<任意>

    Chrome 99 以降

    Promise は Manifest V3 以降でサポートされていますが、コールバックは下位互換性のために提供されています。同じ関数呼び出しで両方を使用することはできません。Promise は、コールバックに渡されたのと同じ型で解決されます。

setUpdateUrlData()

chrome.extension.setUpdateUrlData(
  data: string,
)

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

パラメータ

  • data

    文字列

イベント

onRequest

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

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

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

パラメータ

  • callback

    機能

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

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

    • request

      任意

    • sendResponse

      機能

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

      ()=>void

onRequestExternal

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

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

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

パラメータ

  • callback

    機能

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

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

    • request

      任意

    • sendResponse

      機能

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

      ()=>void