chrome.types

Beschreibung

Die chrome.types API enthält Typdeklarationen für Chrome.

Chrome-Einstellungen

Der Typ ChromeSetting bietet eine gemeinsame Reihe von Funktionen (get(), set() und clear()) sowie einen Event-Publisher (onChange) für die Einstellungen des Chrome-Browsers. In den Beispielen für Proxyeinstellungen wird gezeigt, wie diese Funktionen verwendet werden sollen.

Umfang und Lebenszyklus

In Chrome wird zwischen drei verschiedenen Bereichen von Browsereinstellungen unterschieden:

regular
Einstellungen, die im regular-Bereich festgelegt sind, gelten für normale Browserfenster und werden von Inkognitofenstern übernommen, sofern sie nicht überschrieben werden. Diese Einstellungen werden auf der Festplatte gespeichert und bleiben bestehen, bis sie von der zuständigen Erweiterung gelöscht werden oder die zuständige Erweiterung deaktiviert oder deinstalliert wird.
incognito_persistent
Einstellungen, die im Bereich incognito_persistent festgelegt sind, gelten nur für Inkognitofenster. Diese Einstellungen überschreiben die regular-Einstellungen. Diese Einstellungen werden auf der Festplatte gespeichert und bleiben bestehen, bis sie von der zuständigen Erweiterung gelöscht werden oder die zuständige Erweiterung deaktiviert oder deinstalliert wird.
incognito_session_only
Einstellungen, die im Bereich incognito_session_only festgelegt sind, gelten nur für Inkognitofenster. Sie überschreiben die Einstellungen für regular und incognito_persistent. Diese Einstellungen werden nicht auf der Festplatte gespeichert und werden gelöscht, wenn das letzte Inkognitofenster geschlossen wird. Sie können nur festgelegt werden, wenn mindestens ein Inkognitofenster geöffnet ist.

Vorrang

In Chrome werden Einstellungen auf verschiedenen Ebenen verwaltet. In der folgenden Liste werden die Ebenen beschrieben, die die effektiven Einstellungen beeinflussen können, in aufsteigender Reihenfolge der Priorität.

  1. Vom Betriebssystem bereitgestellte Systemeinstellungen
  2. Befehlszeilenparameter
  3. Von Erweiterungen bereitgestellte Einstellungen
  4. Richtlinien

Wie die Liste zeigt, können Richtlinien alle Änderungen überschreiben, die Sie mit Ihrer Erweiterung angeben. Mit der Funktion get() können Sie ermitteln, ob Ihre Erweiterung eine Einstellung bereitstellen kann oder ob diese Einstellung überschrieben würde.

Wie bereits erwähnt, können in Chrome unterschiedliche Einstellungen für normale Fenster und Inkognitofenster verwendet werden. Das folgende Beispiel veranschaulicht das Verhalten. Angenommen, keine Richtlinie überschreibt die Einstellungen und eine Erweiterung kann Einstellungen für normale Fenster (R) und Einstellungen für Inkognitofenster (I) festlegen.

  • Wenn nur (R) festgelegt ist, gelten diese Einstellungen sowohl für normale als auch für Inkognitofenster.
  • Wenn nur (I) festgelegt ist, gelten diese Einstellungen nur für Inkognitofenster. Bei regulären Fenstern werden die Einstellungen verwendet, die von den unteren Ebenen (Befehlszeilenoptionen und Systemeinstellungen) festgelegt werden.
  • Wenn sowohl (R) als auch (I) festgelegt sind, werden die entsprechenden Einstellungen für normale und Inkognitofenster verwendet.

Wenn zwei oder mehr Erweiterungen dieselbe Einstellung auf unterschiedliche Werte festlegen möchten, hat die zuletzt installierte Erweiterung Vorrang vor den anderen Erweiterungen. Wenn die zuletzt installierte Erweiterung nur (I) festlegt, können die Einstellungen regulärer Fenster durch zuvor installierte Erweiterungen definiert werden.

Der effektive Wert einer Einstellung ist der Wert, der sich aus der Berücksichtigung der Vorrangregeln ergibt. Sie wird von Chrome verwendet.

Typen

ChromeSetting

Eine Schnittstelle, die den Zugriff auf eine Chrome-Browsereinstellung ermöglicht. Ein Beispiel finden Sie unter accessibilityFeatures.

Attribute

  • onChange

    Event<functionvoidvoid>

    Wird ausgelöst, nachdem sich die Einstellung geändert hat.

    Die onChange.addListener-Funktion sieht so aus:

    (callback: function) => {...}

    • callback

      Funktion

      Der Parameter callback sieht so aus:

      (details: object) => void

      • Details

        Objekt

        • incognitoSpecific

          boolean optional

          Gibt an, ob sich der geänderte Wert auf die Inkognitositzung bezieht. Diese Eigenschaft ist nur vorhanden, wenn der Nutzer die Erweiterung im Inkognitomodus aktiviert hat.

        • levelOfControl

          Die Kontrollstufe der Einstellung.

        • Wert

          T

          Der Wert der Einstellung nach der Änderung.

  • löschen

    void

    Löscht die Einstellung und stellt den Standardwert wieder her.

    Die clear-Funktion sieht so aus:

    (details: object) => {...}

    • Details

      Objekt

      Welche Einstellung gelöscht werden soll.

      • Bereich

        Wo die Einstellung gelöscht werden soll (Standard: „regular“).

    • Gibt zurück

      Promise<void>

      Chrome 96 und höher
  • get

    void

    Ruft den Wert einer Einstellung ab.

    Die get-Funktion sieht so aus:

    (details: object) => {...}

    • Details

      Objekt

      Welche Einstellung berücksichtigt werden soll.

      • Inkognito

        boolean optional

        Gibt an, ob der Wert zurückgegeben werden soll, der für die Inkognitositzung gilt (Standardwert: „false“).

    • Gibt zurück

      Promise<object>

      Chrome 96 und höher
  • set

    void

    Legt den Wert einer Einstellung fest.

    Die set-Funktion sieht so aus:

    (details: object) => {...}

    • Details

      Objekt

      Welche Einstellung geändert werden soll.

      • Bereich

        Wo die Einstellung festgelegt werden soll (Standard: „regular“).

      • Wert

        T

        Der Wert der Einstellung. Jede Einstellung hat einen bestimmten Werttyp, der zusammen mit der Einstellung beschrieben wird. Eine Erweiterung sollte keinen Wert eines anderen Typs festlegen.

    • Gibt zurück

      Promise<void>

      Chrome 96 und höher

ChromeSettingScope

Chrome 44 und höher

Der Bereich der Chrome-Einstellung. Eine von

  • regular: Einstellung für das reguläre Profil (das vom Inkognitoprofil übernommen wird, sofern es nicht an anderer Stelle überschrieben wird),
  • regular\_only: Einstellung nur für das reguläre Profil (wird nicht vom Inkognitoprofil übernommen)
  • incognito\_persistent: Einstellung für das Inkognitoprofil, die Browserneustarts überdauert (überschreibt reguläre Einstellungen),
  • incognito\_session\_only: Einstellung für das Inkognitoprofil, die nur während einer Inkognitositzung festgelegt werden kann und gelöscht wird, wenn die Inkognitositzung endet (überschreibt reguläre und „incognito_persistent“-Einstellungen).

Enum

"regular"

"regular_only"

"incognito_persistent"

"incognito_session_only"

LevelOfControl

Chrome 44 und höher

Eine von

  • not\_controllable: kann von keiner Erweiterung gesteuert werden
  • controlled\_by\_other\_extensions: wird von Erweiterungen mit höherer Priorität gesteuert
  • controllable\_by\_this\_extension: kann von dieser Erweiterung gesteuert werden
  • controlled\_by\_this\_extension: wird von dieser Erweiterung gesteuert

Enum

"not_controllable"

"controlled_by_other_extensions"

"controllable_by_this_extension"

"controlled_by_this_extension"