refresh date: 2026-09-25 robots: noindex
Opis
Interfejs chrome.types API zawiera deklaracje typów dla Chrome.
Ustawienia przeglądarki Chrome
Prototyp ChromeSetting udostępnia wspólny zestaw funkcji (get(), set() i clear()) oraz wydawcę zdarzeń (onChange) dla ustawień przeglądarki Chrome. W przykładach ustawień serwera proxy pokazujemy, jak należy używać tych funkcji.
Zakres i cykl życia
Chrome rozróżnia 3 zakresy ustawień przeglądarki:
regular- Ustawienia skonfigurowane w
regularzakresie mają zastosowanie do zwykłych okien przeglądarki i są dziedziczone przez okna incognito, jeśli nie zostaną zastąpione. Te ustawienia są zapisywane na dysku i pozostają w mocy, dopóki nie zostaną wyczyszczone przez rozszerzenie zarządzające lub dopóki rozszerzenie zarządzające nie zostanie wyłączone lub odinstalowane. incognito_persistent- Ustawienia skonfigurowane w
incognito_persistentzakresie mają zastosowanie tylko do okien incognito. W takim przypadku zastępują one ustawieniaregular. Te ustawienia są zapisywane na dysku i pozostają na swoim miejscu, dopóki nie zostaną wyczyszczone przez rozszerzenie zarządzające lub dopóki rozszerzenie zarządzające nie zostanie wyłączone lub odinstalowane. incognito_session_only- Ustawienia skonfigurowane w
incognito_session_onlyzakresie mają zastosowanie tylko do okien incognito. W takim przypadku zastępują one ustawieniaregulariincognito_persistent. Te ustawienia nie są zapisywane na dysku i są usuwane po zamknięciu ostatniego okna incognito. Można je ustawić tylko wtedy, gdy otwarte jest co najmniej jedno okno incognito.
Pierwszeństwo
Chrome zarządza ustawieniami na różnych warstwach. Poniżej znajdziesz listę warstw, które mogą wpływać na obowiązujące ustawienia, w kolejności rosnącej ważności.
- Ustawienia systemowe udostępniane przez system operacyjny
- Parametry wiersza poleceń
- Ustawienia udostępniane przez rozszerzenia
- Zasady
Jak wynika z tej listy, zasady mogą zastępować wszelkie zmiany określone przez rozszerzenie. Za pomocą funkcji get() możesz sprawdzić, czy rozszerzenie może udostępnić ustawienie lub czy to ustawienie zostanie zastąpione.
Jak wspomnieliśmy powyżej, Chrome umożliwia stosowanie różnych ustawień w przypadku zwykłych okien i okien incognito. Poniższy przykład ilustruje to zachowanie. Załóżmy, że żadna zasada nie zastępuje ustawień i że rozszerzenie może ustawiać ustawienia dla zwykłych okien (R) i okien incognito (I).
- Jeśli ustawiona jest tylko zasada (R), te ustawienia obowiązują zarówno w zwykłych, jak i w oknach incognito.
- Jeśli ustawiona jest tylko wartość (I), te ustawienia obowiązują tylko w przypadku okien incognito. Zwykłe okna korzystają z ustawień określonych przez niższe warstwy (opcje wiersza poleceń i ustawienia systemu).
- Jeśli ustawione są zarówno (R), jak i (I), odpowiednie ustawienia są używane w przypadku zwykłych i incognito okien.
Jeśli co najmniej 2 rozszerzenia chcą ustawić to samo ustawienie na różne wartości, rozszerzenie zainstalowane najpóźniej ma pierwszeństwo przed innymi rozszerzeniami. Jeśli ostatnio zainstalowane rozszerzenie ustawia tylko (I), ustawienia zwykłych okien mogą być określone przez wcześniej zainstalowane rozszerzenia.
Efektywna wartość ustawienia to wartość wynikająca z zastosowania reguł pierwszeństwa. Jest on używany przez Chrome.
Typy
ChromeSetting
Interfejs umożliwiający dostęp do ustawień przeglądarki Chrome. Przykład znajdziesz w sekcji accessibilityFeatures.
Właściwości
-
onChange
Event<functionvoidvoid>
Wywoływane po zmianie ustawienia.
Funkcja
onChange.addListenerwygląda tak:(callback: function) => {...}
-
callback
funkcja
Parametr
callbackwygląda tak:(details: object) => void
-
szczegóły
obiekt
-
incognitoSpecific
wartość logiczna opcjonalna
Określa, czy zmieniona wartość jest specyficzna dla sesji incognito. Ta właściwość będzie występować tylko wtedy, gdy użytkownik włączy rozszerzenie w trybie incognito.
-
levelOfControl
Poziom kontroli nad ustawieniem.
-
wartość
T
Wartość ustawienia po zmianie.
-
-
-
-
wyczyść
void
ObietnicaCzyści ustawienie, przywracając wartość domyślną.
Funkcja
clearwygląda tak:(details: object, callback?: function) => {...}
-
szczegóły
obiekt
Które ustawienie chcesz wyczyścić.
-
zakres
ChromeSettingScope opcjonalnie
Miejsce, w którym należy wyczyścić ustawienie (domyślnie: zwykłe).
-
-
callback
funkcja opcjonalna
Parametr
callbackwygląda tak:() => void
-
returns
Promise<void>
Chrome 96 lub nowszaWywoływana po zakończeniu operacji czyszczenia.
Obietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Inne platformy muszą używać wywołań zwrotnych.
-
-
get
void
ObietnicaPobiera wartość ustawienia.
Funkcja
getwygląda tak:(details: object, callback?: function) => {...}
-
szczegóły
obiekt
Które ustawienie warto rozważyć.
-
incognito,
wartość logiczna opcjonalna
Określa, czy zwrócić wartość, która ma zastosowanie do sesji w trybie incognito (domyślnie false).
-
-
callback
funkcja opcjonalna
Parametr
callbackwygląda tak:(details: object) => void
-
szczegóły
obiekt
Szczegóły aktualnie obowiązującej wartości.
-
incognitoSpecific
wartość logiczna opcjonalna
Czy obowiązująca wartość jest specyficzna dla sesji incognito. Ta właściwość będzie obecna tylko wtedy, gdy właściwość
incognitow parametrzedetailselementuget()miała wartość true. -
levelOfControl
Poziom kontroli nad ustawieniem.
-
wartość
T
Wartość ustawienia.
-
-
-
returns
Promise<object>
Chrome 96 lub nowszaObietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Inne platformy muszą używać wywołań zwrotnych.
-
-
zestaw
void
ObietnicaUstawia wartość ustawienia.
Funkcja
setwygląda tak:(details: object, callback?: function) => {...}
-
szczegóły
obiekt
Które ustawienie chcesz zmienić.
-
zakres
ChromeSettingScope opcjonalnie
Miejsce ustawienia (domyślnie: regular).
-
wartość
T
Wartość ustawienia. Pamiętaj, że każde ustawienie ma określony typ wartości, który jest opisany razem z ustawieniem. Rozszerzenie nie powinno ustawiać wartości innego typu.
-
-
callback
funkcja opcjonalna
Parametr
callbackwygląda tak:() => void
-
returns
Promise<void>
Chrome 96 lub nowszaWywoływana po zakończeniu operacji ustawiania.
Obietnice są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Inne platformy muszą używać wywołań zwrotnych.
-
ChromeSettingScope
Zakres ChromeSetting. Jedno z tej listy:
regular: ustawienie profilu zwykłego (które jest dziedziczone przez profil incognito, jeśli nie zostanie zastąpione w innym miejscu);regular\_only: ustawienie tylko dla profilu zwykłego (nie jest dziedziczone przez profil incognito);incognito\_persistent: ustawienie profilu incognito, które jest zachowywane po ponownym uruchomieniu przeglądarki (zastępuje zwykłe ustawienia);incognito\_session\_only: ustawienie profilu incognito, które można skonfigurować tylko podczas sesji incognito i które jest usuwane po jej zakończeniu (zastępuje zwykłe ustawienia i ustawienia incognito_persistent).
Typ wyliczeniowy
„regular”
"regular_only"
"incognito_persistent"
"incognito_session_only"
LevelOfControl
Jedno z tej listy:
not\_controllable: nie można nim sterować za pomocą żadnego rozszerzeniacontrolled\_by\_other\_extensions: kontrolowane przez rozszerzenia o wyższym priorytecie.controllable\_by\_this\_extension: może być kontrolowane przez to rozszerzeniecontrolled\_by\_this\_extension: kontrolowane przez to rozszerzenie
Typ wyliczeniowy
"not_controllable"
"controlled_by_other_extensions"
"controllable_by_this_extension"
"controlled_by_this_extension"