refresh date: 2026-09-25 robots: noindex
Описание
API chrome.types содержит объявления типов для Chrome.
Настройки Chrome
Прототип ChromeSetting предоставляет общий набор функций (get(), set() и clear()), а также издателя событий (onChange) для настроек браузера Chrome. Примеры настроек прокси-сервера демонстрируют, как использовать эти функции.
Область действия и жизненный цикл
В Chrome различаются три области действия настроек браузера:
regular- Настройки, заданные в области действия
regular, применяются к обычным окнам браузера и наследуются окнами инкогнито, если не перезаписаны. Эти настройки хранятся на диске и остаются в силе до тех пор, пока они не будут очищены управляющим расширением или пока оно не будет отключено или удалено. incognito_persistent- Настройки, заданные в области действия
incognito_persistent, применяются только к окнам инкогнито. В этом случае они переопределяют настройкиregular. Эти настройки сохраняются на диске и действуют до тех пор, пока не будут удалены управляющим расширением или пока оно не будет отключено или удалено. incognito_session_only- Настройки, заданные в области действия
incognito_session_only, применяются только к окнам инкогнито. В этом случае они переопределяют настройкиregularиincognito_persistent. Эти настройки не сохраняются на диске и удаляются после закрытия последнего окна инкогнито. Их можно задать, только если открыто хотя бы одно окно инкогнито.
Приоритет
В Chrome настройки управляются на разных уровнях. Ниже перечислены уровни, которые могут влиять на действующие настройки, в порядке возрастания приоритета.
- Системные настройки, предоставляемые операционной системой.
- Параметры командной строки
- Настройки, заданные расширениями
- Правила
Как видно из списка, правила могут отменять любые изменения, заданные расширением. Чтобы определить, может ли расширение задать настройку или она будет переопределена, используйте функцию get().
Как уже говорилось, в Chrome можно задать разные настройки для обычных окон и окон инкогнито. Пример: Предположим, что никакие правила не переопределяют настройки и расширение может задавать настройки для обычных окон (О) и окон инкогнито (И).
- Если задано только значение (R), эти настройки действуют как для обычных окон, так и для окон инкогнито.
- Если задано только значение (I), настройки действуют только для окон инкогнито. Для обычных окон используются настройки, заданные на нижних уровнях (параметры командной строки и системные настройки).
- Если заданы оба значения (R и I), то соответствующие настройки используются для обычных окон и окон инкогнито.
Если два или более расширений пытаются задать разные значения для одного и того же параметра, приоритет отдается расширению, установленному последним. Если последнее установленное расширение задает только (I), настройки обычных окон могут определяться ранее установленными расширениями.
Действующее значение настройки – это значение, которое применяется в соответствии с правилами приоритета. Он используется браузером Chrome.
Типы
ChromeSetting
Интерфейс, позволяющий получить доступ к настройкам браузера Chrome. Пример см. в описании типа accessibilityFeatures.
Свойства
-
onChange
Event<functionvoidvoid>
Срабатывает после изменения настроек.
Функция
onChange.addListenerвыглядит следующим образом:(callback: function) => {...}
-
обратный вызов
function
Параметр
callbackвыглядит следующим образом:(details: object) => void
-
подробные сведения
Объект
-
incognitoSpecific
Логическое значение (необязательно)
Относится ли измененное значение к сеансу инкогнито. Это свойство будет присутствовать, только если пользователь включил расширение в режиме инкогнито.
-
levelOfControl
Уровень контроля над настройкой.
-
value
T
Значение настройки после изменения.
-
-
-
-
очистить
void
PromiseОчищает настройку, восстанавливая значение по умолчанию.
Функция
clearвыглядит следующим образом:(details: object, callback?: function) => {...}
-
подробные сведения
Объект
Настройка, которую нужно удалить.
-
область действия
ChromeSettingScope необязательный
Где очистить настройку (по умолчанию: обычная).
-
-
обратный вызов
function необязательно
Параметр
callbackвыглядит следующим образом:() => void
-
Возвращает
Promise<void>
Chrome 96 и более поздних версий;Вызывается по завершении операции очистки.
Объекты Promise поддерживаются только в Manifest V3 и более поздних версиях. На других платформах нужно использовать обратные вызовы.
-
-
get
void
PromiseПолучает значение настройки.
Функция
getвыглядит следующим образом:(details: object, callback?: function) => {...}
-
подробные сведения
Объект
Какие настройки следует учитывать.
-
инкогнито
Логическое значение (необязательно)
Возвращать ли значение, которое применяется к сеансу инкогнито (по умолчанию – false).
-
-
обратный вызов
function необязательно
Параметр
callbackвыглядит следующим образом:(details: object) => void
-
подробные сведения
Объект
Сведения о текущем действующем значении.
-
incognitoSpecific
Логическое значение (необязательно)
Определяет, относится ли действующее значение к сеансу инкогнито. Это свойство будет присутствовать, только если свойство
incognitoв параметреdetailsметодаget()имело значение true. -
levelOfControl
Уровень контроля над настройкой.
-
value
T
Значение настройки.
-
-
-
Возвращает
Promise<object>
Chrome 96 и более поздних версий;Объекты Promise поддерживаются только в Manifest V3 и более поздних версиях. На других платформах нужно использовать обратные вызовы.
-
-
set
void
PromiseЗадает значение настройки.
Функция
setвыглядит следующим образом:(details: object, callback?: function) => {...}
-
подробные сведения
Объект
какие настройки нужно изменить;
-
область действия
ChromeSettingScope необязательный
Где задать настройку (по умолчанию: обычная).
-
value
T
Значение настройки. Обратите внимание, что у каждой настройки есть определенный тип значения, который описан вместе с ней. Расширение не должно задавать значение другого типа.
-
-
обратный вызов
function необязательно
Параметр
callbackвыглядит следующим образом:() => void
-
Возвращает
Promise<void>
Chrome 96 и более поздних версий;Вызывается по завершении операции set.
Объекты Promise поддерживаются только в Manifest V3 и более поздних версиях. На других платформах нужно использовать обратные вызовы.
-
ChromeSettingScope
Область действия ChromeSetting. Любое из перечисленных:
regular– настройка для обычного профиля (которая наследуется профилем инкогнито, если не переопределена в другом месте);regular\_only– настройка только для обычного профиля (не наследуется профилем инкогнито);incognito\_persistent– настройка для профиля инкогнито, которая сохраняется после перезапуска браузера (переопределяет обычные настройки);incognito\_session\_only– настройка для профиля инкогнито, которую можно задать только во время сеанса инкогнито и которая удаляется по его окончании (переопределяет настройки regular и incognito_persistent).
Перечисление
"regular"
"regular_only"
"incognito_persistent"
"incognito_session_only"
LevelOfControl
Любое из перечисленных:
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"