説明
chrome.types
API には Chrome 用の型宣言が含まれています。
Chromeの設定
ChromeSetting
型は、共通の関数セット(get()
、set()
、clear()
)を提供します。
また、Chrome ブラウザの設定にはイベント パブリッシャー(onChange
)も指定できます。プロキシ設定
例は、これらの関数がどのように使用されるかを示しています。
スコープとライフサイクル
Chrome では、次の 3 種類のブラウザ設定の範囲を区別しています。
regular
regular
スコープで設定された設定は通常のブラウザ ウィンドウに適用され、シークレット モードに継承されます すべての時間に適用されます。これらの設定はディスクに保存され、次の時点まで保持されます。 管理拡張機能によってクリアされるか、管理拡張機能が無効化またはアンインストールされます。incognito_persistent
incognito_persistent
スコープで行った設定は、シークレット ウィンドウにのみ適用されます。そのため、regular
設定をオーバーライドする。これらの設定はディスクに保存され、次の状態になるまで保持されます。 管理拡張機能によってクリアされるか、管理拡張機能が無効化またはアンインストールされます。incognito_session_only
incognito_session_only
スコープで行った設定は、シークレット ウィンドウにのみ適用されます。そのため、regular
とincognito_persistent
の設定をオーバーライドする。これらの設定はディスクや シークレット ウィンドウを閉じるとクリアされます。少なくとも 1 つの シークレット ウィンドウが開いています。
優先度
Chrome はさまざまなレイヤで設定を管理します。次のリストは、変更される可能性のあるレイヤを 優先順位の高いものから順に、有効な設定に影響します。
- オペレーティング システムが提供するシステム設定
- コマンドライン パラメータ
- 拡張機能による設定
- ポリシー
このリストが示すように、拡張機能で指定した変更はポリシーによってオーバーライドされる可能性があります。マイページ
get()
関数を使用して、拡張機能が設定を提供できるかどうかを判断できます。
オーバーライドするかを指定します
すでに説明したように、Chrome では通常のウィンドウとシークレット モードに異なる設定を使用できます。 表示されます。次の例は、この動作を示しています。デフォルトのポリシーをオーバーライドするポリシーがない 拡張機能が通常のウィンドウ(R)と Windows シークレット ウィンドウ(I)を使用します。
- (R) のみを設定した場合、これらの設定は通常のウィンドウとシークレット ウィンドウの両方で有効になります。
- (I)のみを設定した場合、これらの設定はシークレット ウィンドウにのみ有効です。通常のウィンドウ 下位レイヤで定義された設定(コマンドライン オプションとシステム設定)を使用する。
- (R)と(I)の両方を設定した場合、通常の設定とシークレット モードにそれぞれの設定が使用されます。 表示されます。
2 つ以上の拡張機能が同じ設定に異なる値を設定したい場合、その拡張機能がインストールされています 他の拡張機能よりも優先されます。最後にインストールした拡張機能が 設定できるのは(I)のみです。標準ウィンドウの設定は、以前にインストールした できます。
設定の「有効な値」は、優先順位ルールを考慮した結果の値となります。これは、 Chrome で使用されます。
型
ChromeSetting
Chrome ブラウザの設定へのアクセスを可能にするインターフェース。例として accessibilityFeatures
をご覧ください。
プロパティ
-
onChange
Event<functionvoidvoid>
設定が変更された後に呼び出されます。
onChange.addListener
関数は次のようになります。(callback: function) => {...}
-
callback
関数
callback
パラメータは次のようになります。(details: object) => void
-
詳細
オブジェクト
-
incognitoSpecific
ブール値(省略可)
変更された値がシークレット セッション固有の値かどうか。 このプロパティは、ユーザーがシークレット モードで拡張機能を有効にした場合のみ存在します。
-
levelOfControl
設定の制御レベル。
-
値
T
変更後の設定の値。
-
-
-
-
クリア
void
<ph type="x-smartling-placeholder"></ph> 約束設定を消去し、デフォルト値に戻します。
clear
関数は次のようになります。(details: object, callback?: function) => {...}
-
詳細
オブジェクト
どの設定を解除するか
-
スコープ
ChromeSettingScope(省略可)
設定をクリアする場所(デフォルト: 標準)。
-
-
callback
関数(省略可)
callback
パラメータは次のようになります。() => void
-
戻り値
約束 <void>
Chrome 96 以降Promise は Manifest V3 以降でサポートされていますが、 下位互換性が確保されます同じ関数呼び出しで両方を使用することはできません。「 Promise はコールバックに渡された型と同じ型で解決されます。
-
-
get
void
<ph type="x-smartling-placeholder"></ph> 約束設定の値を取得します。
get
関数は次のようになります。(details: object, callback?: function) => {...}
-
詳細
オブジェクト
どの設定を検討すべきか
-
シークレット モード
ブール値(省略可)
シークレット セッションに適用される値を返すかどうか(デフォルトは false)。
-
-
callback
関数(省略可)
callback
パラメータは次のようになります。(details: object) => void
-
詳細
オブジェクト
現在有効な値の詳細。
-
incognitoSpecific
ブール値(省略可)
有効な値がシークレット セッションに固有のかどうかを示します。 このプロパティは、
get()
のdetails
パラメータのincognito
プロパティが true の場合にのみ存在します。 -
levelOfControl
設定の制御レベル。
-
値
T
設定の値。
-
-
-
戻り値
Promise<object>
Chrome 96 以降Promise は Manifest V3 以降でサポートされていますが、 下位互換性が確保されます同じ関数呼び出しで両方を使用することはできません。「 Promise はコールバックに渡された型と同じ型で解決されます。
-
-
set
void
<ph type="x-smartling-placeholder"></ph> 約束設定の値を設定します。
set
関数は次のようになります。(details: object, callback?: function) => {...}
-
詳細
オブジェクト
変更する設定
-
スコープ
ChromeSettingScope(省略可)
設定を行う場所(デフォルト: 標準)。
-
値
T
設定の値。 すべての設定には特定の値の型があり、それについては設定と一緒に説明されています。拡張機能に別のタイプの値を設定しないでください。
-
-
callback
関数(省略可)
callback
パラメータは次のようになります。() => void
-
戻り値
約束 <void>
Chrome 96 以降Promise は Manifest V3 以降でサポートされていますが、 下位互換性が確保されます同じ関数呼び出しで両方を使用することはできません。「 Promise はコールバックに渡された型と同じ型で解決されます。
-
ChromeSettingScope
ChromeSetting のスコープ。次のいずれか 1 つ:
regular
: 通常のプロファイルの設定(他の場所でオーバーライドされていない場合は、シークレット プロファイルによって継承されます)。regular\_only
: 通常のプロファイルのみの設定(シークレット プロファイルには継承されません)。incognito\_persistent
: ブラウザの再起動後も保持されるシークレット プロファイルの設定(通常の設定をオーバーライドします)。incognito\_session\_only
: シークレット モード プロファイルの設定。シークレット セッション中にのみ設定でき、シークレット セッションが終了すると削除されます(通常の設定とシークレットの永続的な設定をオーバーライドします)。
列挙型
「レギュラー サイズ」
「regular_only」
シークレット モード
"secret_session_only"
LevelOfControl
次のいずれか 1 つ:
not\_controllable
: 拡張機能で制御することはできませんcontrolled\_by\_other\_extensions
: 優先度の高い拡張機能によって制御controllable\_by\_this\_extension
: この拡張機能で制御可能controlled\_by\_this\_extension
: この拡張機能で制御
列挙型
"not_controllable"
"controlled_by_other_extensions"
"controllable_by_this_extension"
"controlled_by_this_extension"