refresh date: 2026-09-25 robots: noindex
Opis
Interfejs API chrome.types zawiera deklaracje typów dla Chrome.
Ustawienia przeglądarki Chrome
Prototyp ChromeSetting udostępnia wspólny zestaw funkcji (get(), set() i clear()) oraz publikator zdarzeń (onChange) dla ustawień przeglądarki Chrome. Przykłady ustawień serwera proxy pokazują, jak należy używać tych funkcji.
Zakres i cykl życia
Chrome rozróżnia 3 różne zakresy ustawień przeglądarki:
regular- Ustawienia skonfigurowane w zakresie
regularmają 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ą na 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_persistent- Ustawienia skonfigurowane w zakresie
incognito_persistentdotyczą tylko okien incognito. W takich przypadkach zastępują one ustawieniaregular. Te ustawienia są zapisywane na dysku i pozostają na nim, 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 zakresie
incognito_session_onlydotyczą tylko okien incognito. W takich przypadkach 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 1 okno incognito.
Pierwszeństwo
Chrome zarządza ustawieniami na różnych warstwach. Poniższa lista zawiera warstwy, które mogą wpływać na obowiązujące ustawienia, w kolejności od najniższego do najwyższego priorytetu.
- ustawienia systemowe udostępniane przez system operacyjny,
- Parametry wiersza poleceń
- Ustawienia udostępniane przez rozszerzenia
- Zasady
Jak wynika z listy, zasady mogą zastąpić wszelkie zmiany wprowadzone przez rozszerzenie. Możesz użyć funkcji get(), aby określić, czy rozszerzenie może udostępniać ustawienie, czy też zostanie ono zastąpione.
Jak wspomniano powyżej, Chrome umożliwia korzystanie z 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 określać ustawienia zwykłych okien (Z) i okien incognito (I).
- Jeśli ustawiona jest tylko zasada (R), te ustawienia obowiązują zarówno w zwykłych oknach, jak i w oknach incognito.
- Jeśli ustawiona jest tylko zasada (I), te ustawienia obowiązują tylko w oknach incognito. Zwykłe okna używają ustawień określonych przez niższe warstwy (opcje wiersza poleceń i ustawienia systemowe).
- Jeśli ustawione są zarówno (R), jak i (I), odpowiednie ustawienia są używane w przypadku zwykłych okien i okien incognito.
Jeśli co najmniej 2 rozszerzenia chcą ustawić to samo ustawienie na różne wartości, rozszerzenie zainstalowane jako ostatnie ma pierwszeństwo przed innymi rozszerzeniami. Jeśli ostatnio zainstalowane rozszerzenie ustawia tylko (I), ustawienia zwykłych okien mogą być definiowane przez wcześniej zainstalowane rozszerzenia.
Obowiązująca wartość ustawienia to ta, która wynika z uwzględnienia 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>
Uruchamiane po zmianie ustawienia.
Funkcja
onChange.addListenerwygląda tak:(callback: function) => {...}
-
callback
funkcja
Parametr
callbackwygląda tak:(details: object) => void
-
szczegóły
obiekt
-
incognitoSpecific
boolean opcjonalne
Czy zmieniona wartość jest specyficzna dla sesji incognito. Ta właściwość będzie obecna tylko wtedy, gdy użytkownik włączy rozszerzenie w trybie incognito.
-
levelOfControl
Poziom kontroli ustawienia.
-
wartość
T
Wartość ustawienia po zmianie.
-
-
-
-
wyczyść
unieważnienie,
ObietnicaUsuwa ustawienie i przywraca wartość domyślną.
Funkcja
clearwygląda tak:(details: object, callback?: function) => {...}
-
szczegóły
obiekt
Ustawienie, które chcesz wyczyścić.
-
zakres
ChromeSettingScope opcjonalny
Gdzie wyczyścić ustawienie (domyślnie: regularne).
-
-
callback
function opcjonalne
Parametr
callbackwygląda tak:() => void
-
returns
thought Promise<void>
Chrome 96 lub nowsza wersjaWywoływana po zakończeniu operacji czyszczenia.
Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
-
-
get
unieważnienie,
ObietnicaPobiera wartość ustawienia.
Funkcja
getwygląda tak:(details: object, callback?: function) => {...}
-
szczegóły
obiekt
Jakie ustawienia wybrać.
-
incognito
boolean opcjonalne
Określa, czy ma być zwracana wartość, która ma zastosowanie do sesji incognito (domyślnie false).
-
-
callback
function opcjonalne
Parametr
callbackwygląda tak:(details: object) => void
-
szczegóły
obiekt
Szczegóły aktualnie obowiązującej wartości.
-
incognitoSpecific
boolean opcjonalne
Określa, czy obowiązująca wartość jest specyficzna dla sesji incognito. Ta właściwość będzie obecna tylko wtedy, gdy właściwość
incognitow parametrzedetailsmetodyget()miała wartość true. -
levelOfControl
Poziom kontroli ustawienia.
-
wartość
T
Wartość ustawienia.
-
-
-
returns
Promise<object>
Chrome 96 lub nowsza wersjaObiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
-
-
zestaw
unieważnienie,
ObietnicaUstawia wartość ustawienia.
Funkcja
setwygląda tak:(details: object, callback?: function) => {...}
-
szczegóły
obiekt
które ustawienie chcesz zmienić,
-
zakres
ChromeSettingScope opcjonalny
Gdzie ustawić ustawienie (domyślnie: regularne).
-
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
function opcjonalne
Parametr
callbackwygląda tak:() => void
-
returns
thought Promise<void>
Chrome 96 lub nowsza wersjaWywoływana po zakończeniu operacji ustawiania.
Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.
-
ChromeSettingScope
Zakres ustawienia ChromeSetting. Jedno z tej listy:
regular: ustawienie dla zwykłego profilu (które jest dziedziczone przez profil incognito, jeśli nie zostanie zastąpione w innym miejscu),regular\_only: ustawienie tylko dla zwykłego profilu (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 zakończeniu sesji incognito (zastępuje ustawienia zwykłe i incognito_persistent).
Typ wyliczeniowy
"regular"
"regular_only"
"incognito_persistent"
"incognito_session_only"
LevelOfControl
Jedno z tej listy:
not\_controllable: nie może być kontrolowane przez żadne rozszerzeniecontrolled\_by\_other\_extensions: kontrolowane przez rozszerzenia o wyższym prioryteciecontrollable\_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"