chrome.extension

説明

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

ViewType

Chrome 44 以降

拡張ビューのタイプ。

列挙型

"tab"

"popup"

プロパティ

inIncognitoContext

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

タイプ

ブール値

lastError

≤ MV2 Chrome 58 以降で非推奨

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

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

タイプ

オブジェクト

プロパティ

  • メッセージ

    文字列

    発生したエラーの説明。

メソッド

getBackgroundPage()

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

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

戻り値

  • Window | undefined

getExtensionTabs()

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

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

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

パラメータ

  • windowId

    number 省略可

戻り値

  • Window[]

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

getURL()

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

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

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

パラメータ

  • パス

    文字列

    拡張機能内のリソースへのパス。インストール ディレクトリからの相対パスで表されます。

戻り値

  • 文字列

    リソースの完全修飾 URL。

getViews()

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

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

パラメータ

  • fetchProperties

    オブジェクト 省略可

    • tabId

      number 省略可

      Chrome 54 以降

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

    • type

      ViewType 省略可

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

    • windowId

      number 省略可

      検索を制限するウィンドウ。省略すると、すべてのビューが返されます。

戻り値

  • Window[]

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

isAllowedFileSchemeAccess()

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

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

パラメータ

  • callback

    関数 省略可

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

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      ブール値

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

戻り値

  • Promise<boolean>

    Chrome 99 以降

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

isAllowedIncognitoAccess()

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

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

パラメータ

  • callback

    関数 省略可

    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,
)
: Promise<any>

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

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

パラメータ

  • extensionId

    文字列 省略可

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

  • リクエスト

    任意

  • callback

    関数 省略可

    Chrome 99 以降

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

    (response: any) => void

    • レスポンス

      任意

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

戻り値

  • Promise<any>

    Chrome 99 以降

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

setUpdateUrlData()

chrome.extension.setUpdateUrlData(
  data: string,
)
: void

拡張機能の更新 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