Beschreibung
Die chrome.types
API enthält Typdeklarationen für Chrome.
Chrome-Einstellungen
Der ChromeSetting
-Prototyp bietet einen gemeinsamen Satz von Funktionen (get()
, set()
und clear()
).
sowie einen Ereignis-Publisher (onChange
) für die Einstellungen des Chrome-Browsers festgelegt. Die Proxy-Einstellungen
Beispiele zeigen, wie diese Funktionen verwendet werden.
Umfang und Lebenszyklus
Chrome unterscheidet zwischen drei verschiedenen Bereichen der Browsereinstellungen:
regular
- Im Bereich
regular
festgelegte Einstellungen gelten für normale Browserfenster und werden vom Inkognitomodus übernommen wenn diese nicht überschrieben werden. Diese Einstellungen werden auf dem Laufwerk gespeichert, bis Sie werden von der zuständigen Erweiterung freigegeben oder die zugehörige Erweiterung wird deaktiviert oder deinstalliert. incognito_persistent
- Im Bereich
incognito_persistent
festgelegte Einstellungen gelten nur für Inkognitofenster. Bei diesenregular
-Einstellungen überschreiben. Diese Einstellungen werden auf dem Laufwerk gespeichert, bis sie von der zuständigen Erweiterung freigegeben wurde oder die betreffende Erweiterung deaktiviert oder deinstalliert wurde. incognito_session_only
- Im Bereich
incognito_session_only
festgelegte Einstellungen gelten nur für Inkognitofenster. Bei diesenregular
- undincognito_persistent
-Einstellungen überschreiben. Diese Einstellungen werden nicht auf dem Laufwerk gespeichert und werden gelöscht, wenn das letzte Inkognitofenster geschlossen wird. Sie können nur festgelegt werden, wenn mindestens eine Inkognitofenster geöffnet ist.
Vorrang
Chrome verwaltet Einstellungen auf verschiedenen Ebenen. In der folgenden Liste werden die Ebenen beschrieben, die möglicherweise Einfluss auf die geltenden Einstellungen haben, in aufsteigender Reihenfolge.
- Vom Betriebssystem bereitgestellte Systemeinstellungen
- Befehlszeilenparameter
- Von Erweiterungen bereitgestellte Einstellungen
- Richtlinien
Wie aus der Liste hervorgeht, können Richtlinien alle Änderungen, die Sie in der Erweiterung vornehmen, außer Kraft setzen. Ich
kann mithilfe der Funktion „get()
“ feststellen, ob deine Erweiterung eine Einstellung bereitstellen kann
oder ob diese Einstellung überschrieben wird.
Wie bereits erwähnt, können in Chrome verschiedene Einstellungen für normale Fenster und den Inkognitomodus verwendet werden Fenster. Das folgende Beispiel veranschaulicht das Verhalten. Davon ausgehen, dass keine Richtlinie die und dass eine Erweiterung Einstellungen für normale Fenster (R) und Einstellungen für Inkognitofenstern (I).
- Wenn nur (R) festgelegt ist, gelten diese Einstellungen sowohl für normale als auch für Inkognitofenster.
- Ist nur (I) festgelegt, gelten diese Einstellungen nur für Inkognitofenster. Normale Fenster Verwenden Sie die Einstellungen, die von den niedrigeren Ebenen (Befehlszeilenoptionen und Systemeinstellungen) festgelegt werden.
- Wenn sowohl (R) als auch (I) festgelegt sind, werden die entsprechenden Einstellungen für den regulären und den Inkognitomodus verwendet. Fenster.
Wenn für zwei oder mehr Erweiterungen für dieselbe Einstellung unterschiedliche Werte festgelegt werden sollen, wurde die Erweiterung installiert hat Vorrang vor den anderen Erweiterungen. Wenn die zuletzt installierte Erweiterung nur (I) festlegt, können die Einstellungen normaler Fenster durch zuvor installierte Fenster Erweiterungen.
Der effektive Wert einer Einstellung ergibt sich aus den Prioritätsregeln. Es von Chrome verwendet wird.
Typen
ChromeSetting
Eine Oberfläche, die den Zugriff auf eine Chrome-Browsereinstellung ermöglicht. Ein Beispiel findest du unter accessibilityFeatures
.
Attribute
-
onChange
Ereignis<functionvoidvoid>
Wird ausgelöst, nachdem die Einstellung geändert wurde.
Die Funktion
onChange.addListener
sieht so aus: <ph type="x-smartling-placeholder"></ph>(callback: function) => {...}
-
callback
Funktion
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(details: object) => void
-
Details
Objekt
-
incognitoSpecific
Boolescher Wert optional
Gibt an, ob der geänderte Wert für die Inkognitositzung spezifisch ist. Diese Eigenschaft ist nur vorhanden, wenn der Nutzer die Erweiterung im Inkognitomodus aktiviert hat.
-
levelOfControl
Der Grad der Kontrolle über die Einstellung.
-
Wert
T
Der Wert der Einstellung nach der Änderung.
-
-
-
-
löschen
voidm
<ph type="x-smartling-placeholder"></ph> VersprechenLöscht die Einstellung und stellt alle Standardwerte wieder her.
Die Funktion
clear
sieht so aus: <ph type="x-smartling-placeholder"></ph>(details: object, callback?: function) => {...}
-
Details
Objekt
Welche Einstellung gelöscht werden soll.
-
Bereich
ChromeSettingScope optional
Ort, an dem die Einstellung gelöscht werden soll (Standardeinstellung: Normal)
-
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
-
Gibt zurück
Versprechen<void>
Chrome 96 und höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
-
-
get
voidm
<ph type="x-smartling-placeholder"></ph> VersprechenRuft den Wert einer Einstellung ab.
Die Funktion
get
sieht so aus: <ph type="x-smartling-placeholder"></ph>(details: object, callback?: function) => {...}
-
Details
Objekt
Welche Einstellung Sie berücksichtigen sollten
-
inkognito
Boolescher Wert optional
Gibt an, ob der Wert zurückgegeben werden soll, der für die Inkognitositzung gilt (Standardeinstellung: false).
-
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>(details: object) => void
-
Details
Objekt
Details zum aktuell gültigen Wert.
-
incognitoSpecific
Boolescher Wert optional
Gibt an, ob der effektive Wert für die Inkognitositzung spezifisch ist. Diese Eigenschaft ist nur vorhanden, wenn die Eigenschaft
incognito
im Parameterdetails
vonget()
wahr war. -
levelOfControl
Der Grad der Kontrolle über die Einstellung.
-
Wert
T
Der Wert der Einstellung.
-
-
-
Gibt zurück
Promise<object>
Chrome 96 und höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
-
-
set
voidm
<ph type="x-smartling-placeholder"></ph> VersprechenLegt den Wert einer Einstellung fest.
Die Funktion
set
sieht so aus: <ph type="x-smartling-placeholder"></ph>(details: object, callback?: function) => {...}
-
Details
Objekt
Einstellung, die geändert werden soll.
-
Bereich
ChromeSettingScope optional
Einstellung, wo die Einstellung festgelegt werden soll (Standardeinstellung: Normal)
-
Wert
T
Der Wert der Einstellung. Beachten Sie, dass jede Einstellung einen bestimmten Werttyp hat, der zusammen mit der Einstellung beschrieben wird. Über eine Erweiterung sollte kein Wert eines anderen Typs festgelegt werden.
-
-
callback
Funktion optional
Der Parameter
callback
sieht so aus: <ph type="x-smartling-placeholder"></ph>() => void
-
Gibt zurück
Versprechen<void>
Chrome 96 und höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
-
ChromeSettingScope
Der Bereich der ChromeSetting. Eine von
regular
: Einstellung für das reguläre Profil (die vom Inkognitoprofil übernommen wird, wenn sie nicht an anderer Stelle überschrieben wird)regular\_only
: Einstellung nur für das reguläre Profil (nicht vom Inkognitoprofil übernommen),incognito\_persistent
: Einstellung für das Inkognitoprofil, das auch nach Browserneustarts gilt (normale Einstellungen werden überschrieben)incognito\_session\_only
: Einstellung für das Inkognitoprofil, das nur während einer Inkognitositzung festgelegt werden kann und am Ende der Inkognitositzung gelöscht wird. Dadurch werden die regulären und die Inkognito-persistenten Einstellungen überschrieben.
Enum
"Normal"
"regular_only"
"Inkognito_persistent"
"Inkognito_session_only"
LevelOfControl
Eine von
not\_controllable
: kann von keiner Erweiterung gesteuert werdencontrolled\_by\_other\_extensions
: von Erweiterungen mit höherer Priorität gesteuertcontrollable\_by\_this\_extension
: kann von dieser Erweiterung gesteuert werdencontrolled\_by\_this\_extension
: von dieser Erweiterung gesteuert
Enum
"not_controllable"
"controlled_by_other_extensions"
"controllable_by_this_extension"
"controlled_by_this_extension"