説明
chrome.management API には、インストール済みのアプリと拡張機能を管理する方法が用意されています。
権限
managementManagement API を使用するには、拡張機能のマニフェストで「management」権限を宣言する必要があります。次に例を示します。
{
"name": "My extension",
...
"permissions": [
"management"
],
...
}
management.getPermissionWarningsByManifest()、management.uninstallSelf()、management.getSelf() には管理権限は必要ありません。
型
ExtensionDisabledReason
アイテムが無効になっている理由。
列挙型
"unknown"
"permissions_increase"
ExtensionInfo
インストールされている拡張機能、アプリ、テーマに関する情報。
プロパティ
-
appLaunchUrl
文字列 省略可
起動 URL(アプリの場合のみ)。
-
availableLaunchTypes
LaunchType[] 省略可
現在利用可能な起動タイプ(アプリの場合のみ)。
-
説明
文字列
この拡張機能、アプリ、テーマの説明。
-
disabledReason
アイテムが無効になっている理由。
-
有効
ブール値
現在有効か無効か。
-
homepageUrl
文字列 省略可
この拡張機能、アプリ、テーマのホームページの URL。
-
hostPermissions
string[]
ホストベースの権限のリストを返します。
-
アイコン
IconInfo[] 省略可
アイコン情報のリスト。これはマニフェストで宣言された内容を反映しているだけで、その URL の実際の画像は宣言されたものより大きいか小さい可能性があるため、これらの画像を参照する img タグで明示的な幅と高さの属性を使用することを検討してください。詳しくは、アイコンに関するマニフェストのドキュメントをご覧ください。
-
id
文字列
拡張機能の固有識別子。
-
installType
拡張機能のインストール方法。
-
isApp
ブール値
非推奨management.ExtensionInfo.typeを使用してください。これがアプリの場合は true。
-
launchType
LaunchType 省略可
アプリの起動タイプ(アプリの場合のみ)。
-
mayDisable
ブール値
この拡張機能をユーザーが無効にしたり、アンインストールしたりできるかどうか。
-
mayEnable
boolean 省略可
Chrome 62 以降 Chrome 148 以降の browser.*この拡張機能をユーザーが有効にできるかどうか。これは、有効になっていない拡張機能に対してのみ返されます。
-
name
文字列
この拡張機能、アプリ、テーマの名前。
-
offlineEnabled
ブール値
拡張機能、アプリ、テーマがオフラインをサポートしていることを宣言しているかどうか。
-
optionsUrl
文字列
アイテムのオプション ページの URL(存在する場合)。
-
権限
string[]
API ベースの権限のリストを返します。
-
shortName
文字列
この拡張機能、アプリ、テーマの名前の短縮版。
-
type
この拡張機能、アプリ、テーマのタイプ。
-
updateUrl
文字列 省略可
この拡張機能、アプリ、テーマの更新 URL。
-
version
文字列
この拡張機能、アプリ、テーマのバージョン。
-
versionName
文字列 省略可
Chrome 50 以降 Chrome 148 以降の browser.*この拡張機能、アプリ、テーマのバージョン名(マニフェストで指定されている場合)。
ExtensionInstallType
拡張機能のインストール方法。admin(拡張機能は管理ポリシーによってインストールされた)、development(拡張機能はデベロッパー モードでパッケージ化されずに読み込まれた)、normal(拡張機能は .crx ファイルを介して通常どおりインストールされた)、sideload(拡張機能はマシン上の他のソフトウェアによってインストールされた)、other(拡張機能は他の方法でインストールされた)のいずれか。
列挙型
"admin"
"development"
"normal"
「sideload」
"other"
ExtensionType
この拡張機能、アプリ、テーマのタイプ。
列挙型
"extension"
"hosted_app"
"packaged_app"
"legacy_packaged_app"
"theme"
"login_screen_extension"
IconInfo
拡張機能、アプリ、テーマに属するアイコンに関する情報。
プロパティ
-
サイズ
数値
アイコンの幅と高さを表す数値。一般的な値には、128、48、24、16 などがあります(ただし、これらに限定されません)。
-
URL
文字列
このアイコン画像の URL。アイコンをグレースケールで表示するには(拡張機能が無効になっていることを示す場合など)、URL に
?grayscale=trueを追加します。
LaunchType
以下は、アプリの起動タイプとして考えられるものです。
列挙型
"OPEN_AS_REGULAR_TAB"
"OPEN_AS_PINNED_TAB"
"OPEN_AS_WINDOW"
"OPEN_FULL_SCREEN"
UninstallOptions
拡張機能のアンインストールを処理する方法のオプション。
プロパティ
-
showConfirmDialog
boolean 省略可
アンインストール確認ダイアログをユーザーに表示するかどうか。自己アンインストールのデフォルトは false です。拡張機能が別の拡張機能をアンインストールする場合、このパラメータは無視され、ダイアログが常に表示されます。
メソッド
createAppShortcut()
browser.management.createAppShortcut(
id: string,
): Promise<void>
アプリのショートカットを作成するためのオプションを表示します。Mac では、パッケージ化されたアプリのショートカットのみを作成できます。
パラメータ
-
id
文字列
これは、
management.ExtensionInfoのアプリ アイテムの ID にする必要があります。
戻り値
-
Promise<void>
Chrome 88 以降 Chrome 148 以降の browser.*
generateAppForLink()
browser.management.generateAppForLink(
url: string,
title: string,
): Promise<ExtensionInfo>
URL のアプリを生成します。生成されたブックマーク アプリを返します。
パラメータ
-
URL
文字列
ウェブページの URL。URL のスキームは「http」または「https」のみです。
-
title
文字列
生成されたアプリのタイトル。
戻り値
-
Promise<ExtensionInfo>
Chrome 88 以降 Chrome 148 以降の browser.*
get()
browser.management.get(
id: string,
): Promise<ExtensionInfo>
指定された ID を持つ、インストール済みの拡張機能、アプリ、テーマに関する情報を返します。
パラメータ
-
id
文字列
management.ExtensionInfoのアイテムの ID。
戻り値
-
Promise<ExtensionInfo>
Chrome 88 以降 Chrome 148 以降の browser.*
戻り値
-
Promise<ExtensionInfo[]>
Chrome 88 以降 Chrome 148 以降の browser.*
getPermissionWarningsById()
browser.management.getPermissionWarningsById(
id: string,
): Promise<string[]>
指定された拡張機能 ID の権限に関する警告のリストを返します。
パラメータ
-
id
文字列
インストール済みの拡張機能の ID。
戻り値
-
Promise<string[]>
Chrome 88 以降 Chrome 148 以降の browser.*
getPermissionWarningsByManifest()
browser.management.getPermissionWarningsByManifest(
manifestStr: string,
): Promise<string[]>
指定された拡張機能マニフェスト文字列の権限に関する警告のリストを返します。注: この関数は、マニフェストで「management」権限をリクエストしなくても使用できます。
パラメータ
-
manifestStr
文字列
拡張機能のマニフェストの JSON 文字列。
戻り値
-
Promise<string[]>
Chrome 88 以降 Chrome 148 以降の browser.*
getSelf()
browser.management.getSelf(): Promise<ExtensionInfo>
呼び出し元の拡張機能、アプリ、テーマに関する情報を返します。注: この関数は、マニフェストで「management」権限をリクエストしなくても使用できます。
戻り値
-
Promise<ExtensionInfo>
Chrome 88 以降 Chrome 148 以降の browser.*
installReplacementWebApp()
browser.management.installReplacementWebApp(): Promise<void>
マニフェストで指定された replacement_web_app を起動します。まだインストールされていない場合は、インストールを求めるメッセージが表示されます。
戻り値
-
Promise<void>
Chrome 88 以降 Chrome 148 以降の browser.*
launchApp()
browser.management.launchApp(
id: string,
): Promise<void>
アプリケーションを起動します。
パラメータ
-
id
文字列
アプリケーションの拡張機能 ID。
戻り値
-
Promise<void>
Chrome 88 以降 Chrome 148 以降の browser.*
setEnabled()
browser.management.setEnabled(
id: string,
enabled: boolean,
): Promise<void>
アプリまたは拡張機能を有効または無効にします。ほとんどの場合、この関数はユーザー ジェスチャーのコンテキスト(ボタンの onclick ハンドラなど)で呼び出す必要があります。また、不正使用を防ぐために、ネイティブの確認 UI がユーザーに表示されることがあります。
パラメータ
-
id
文字列
これは、
management.ExtensionInfoのアイテムの ID にする必要があります。 -
有効
ブール値
この項目を有効にするか無効にするか。
戻り値
-
Promise<void>
Chrome 88 以降 Chrome 148 以降の browser.*
setLaunchType()
browser.management.setLaunchType(
id: string,
launchType: LaunchType,
): Promise<void>
アプリの起動タイプを設定します。
パラメータ
-
id
文字列
これは、
management.ExtensionInfoのアプリ アイテムの ID にする必要があります。 -
launchType
ターゲット起動タイプ。利用可能な起動タイプはプラットフォームや構成によって異なるため、この起動タイプが
ExtensionInfo.availableLaunchTypesにあることを必ず確認してください。
戻り値
-
Promise<void>
Chrome 88 以降 Chrome 148 以降の browser.*
uninstall()
browser.management.uninstall(
id: string,
options?: UninstallOptions,
): Promise<void>
現在インストールされているアプリまたは拡張機能をアンインストールします。注: この関数は、ユーザーが指定された拡張機能 / アプリをアンインストールできない管理対象環境では機能しません。アンインストールが失敗した場合(ユーザーがダイアログをキャンセルした場合など)、Promise は拒否されるか、runtime.lastError が設定されたコールバックが呼び出されます。
パラメータ
-
id
文字列
これは、
management.ExtensionInfoのアイテムの ID にする必要があります。 -
オプション
UninstallOptions 省略可
戻り値
-
Promise<void>
Chrome 88 以降 Chrome 148 以降の browser.*
uninstallSelf()
browser.management.uninstallSelf(
options?: UninstallOptions,
): Promise<void>
通話拡張機能をアンインストールします。注: この関数は、マニフェストで「management」権限をリクエストしなくても使用できます。この関数は、ユーザーが指定された拡張機能やアプリをアンインストールできない管理対象環境では機能しません。
パラメータ
-
オプション
UninstallOptions 省略可
戻り値
-
Promise<void>
Chrome 88 以降 Chrome 148 以降の browser.*
イベント
onDisabled
browser.management.onDisabled.addListener(
callback: function,
)
アプリまたは拡張機能が無効になったときに呼び出されます。
パラメータ
-
callback
関数
callbackパラメータは次のようになります。(info: ExtensionInfo) => void
onEnabled
browser.management.onEnabled.addListener(
callback: function,
)
アプリまたは拡張機能が有効になったときに呼び出されます。
パラメータ
-
callback
関数
callbackパラメータは次のようになります。(info: ExtensionInfo) => void
onInstalled
browser.management.onInstalled.addListener(
callback: function,
)
アプリまたは拡張機能がインストールされたときに呼び出されます。
パラメータ
-
callback
関数
callbackパラメータは次のようになります。(info: ExtensionInfo) => void
onUninstalled
browser.management.onUninstalled.addListener(
callback: function,
)
アプリまたは拡張機能がアンインストールされたときに呼び出されます。
パラメータ
-
callback
関数
callbackパラメータは次のようになります。(id: string) => void
-
id
文字列
-