설명
chrome.types
API에는 Chrome의 유형 선언이 포함되어 있습니다.
크롬 설정
ChromeSetting
유형은 Chrome 브라우저 설정에 관한 이벤트 게시자 (onChange
)뿐만 아니라 일반적인 함수 집합 (get()
, set()
, clear()
)을 제공합니다. 프록시 설정 예시에서는 이러한 함수를 사용하는 방법을 보여줍니다.
범위 및 수명 주기
Chrome은 다음과 같은 세 가지 범위의 브라우저 설정을 구분합니다.
regular
- 설정은 일반 브라우저 창에 적용되며 덮어쓰지 않으면 시크릿 창에서 상속됩니다. 이러한 설정은 디스크에 저장되며 관리 확장 프로그램에서 삭제하거나 관리 확장 프로그램을 사용 중지하거나 제거할 때까지 그대로 유지됩니다.
incognito_persistent
- 설정은 시크릿 모드 창에만 적용됩니다. 이러한 경우
regular
설정을 재정의합니다. 이러한 설정은 디스크에 저장되며 관리 확장 프로그램에서 지우거나 관리 확장 프로그램을 사용 중지 또는 제거할 때까지 그대로 유지됩니다. incognito_session_only
- 설정은 시크릿 모드 창에만 적용됩니다. 이러한 경우
regular
및incognito_persistent
설정이 재정의됩니다. 이러한 설정은 디스크에 저장되지 않으며 마지막 시크릿 창이 닫히면 삭제됩니다. 이러한 설정은 하나 이상의 시크릿 창이 열려 있을 때만 설정할 수 있습니다.
regular
범위에서 설정된 incognito_persistent
범위에서 설정된 incognito_session_only
범위에서 설정된 우선 적용
Chrome은 여러 레이어에서 설정을 관리합니다. 다음 목록에서는 우선순위가 높아지는 순서대로 유효 설정에 영향을 미칠 수 있는 레이어를 설명합니다.
- 운영체제에서 제공하는 시스템 설정
- 명령줄 매개변수
- 확장 프로그램에서 제공하는 설정
- 정책
목록에서 알 수 있듯이 정책은 확장 프로그램으로 지정한 변경사항을 무시할 수 있습니다. get()
함수를 사용하여 확장 프로그램이 설정을 제공할 수 있는지 또는 이 설정이 재정의되는지 확인할 수 있습니다.
앞서 설명한 것처럼 Chrome에서는 일반 창과 시크릿 창에 서로 다른 설정을 사용할 수 있습니다. 다음 예는 이 동작을 보여줍니다. 정책이 설정을 재정의하지 않고 확장 프로그램이 일반 창 (R)의 설정과 시크릿 창 (I)의 설정을 설정할 수 있다고 가정합니다.
- (R)만 설정된 경우 이러한 설정은 일반 창과 시크릿 창 모두에 적용됩니다.
- (I)만 설정된 경우 이 설정은 시크릿 창에만 적용됩니다. 일반 창은 하위 레이어 (명령줄 옵션 및 시스템 설정)에 의해 결정된 설정을 사용합니다.
- (R)과 (I)가 모두 설정된 경우 일반 창과 시크릿 창에 각각의 설정이 사용됩니다.
두 개 이상의 확장 프로그램이 동일한 설정을 서로 다른 값으로 설정하려고 하면 가장 최근에 설치된 확장 프로그램이 다른 확장 프로그램보다 우선합니다. 가장 최근에 설치된 확장 프로그램이 (I)만 설정하는 경우 일반 창의 설정은 이전에 설치된 확장 프로그램에 의해 정의될 수 있습니다.
설정의 유효 값은 우선순위 규칙을 고려하여 결정됩니다. Chrome에서 사용됩니다.
유형
ChromeSetting
Chrome 브라우저 설정에 액세스할 수 있는 인터페이스 예는 accessibilityFeatures
를 참고하세요.
속성
-
onChange
Event<functionvoidvoid>
설정이 변경된 후에 발생합니다.
onChange.addListener
함수는 다음과 같습니다.(callback: function) => {...}
-
callback
함수
callback
매개변수는 다음과 같습니다.(details: object) => void
-
세부정보
객체
-
incognitoSpecific
불리언 선택사항
변경된 값이 시크릿 모드 세션에만 적용되는지 여부입니다. 이 속성은 사용자가 시크릿 모드에서 확장 프로그램을 사용 설정한 경우에만 표시됩니다.
-
levelOfControl
설정의 제어 수준입니다.
-
값
T
변경 후 설정의 값입니다.
-
-
-
-
지우기
void
설정을 지우고 기본값을 복원합니다.
clear
함수는 다음과 같습니다.(details: object) => {...}
-
세부정보
객체
삭제할 설정입니다.
-
범위
ChromeSettingScope 선택사항
설정을 지울 위치입니다 (기본값: regular).
-
-
returns
Promise<void>
Chrome 96 이상
-
-
get
void
설정 값을 가져옵니다.
get
함수는 다음과 같습니다.(details: object) => {...}
-
세부정보
객체
고려할 설정입니다.
-
시크릿 모드
불리언 선택사항
시크릿 세션에 적용되는 값을 반환할지 여부입니다 (기본값은 false).
-
-
returns
Promise<object>
Chrome 96 이상
-
-
set
void
설정 값을 설정합니다.
set
함수는 다음과 같습니다.(details: object) => {...}
-
세부정보
객체
변경할 설정입니다.
-
범위
ChromeSettingScope 선택사항
설정을 설정할 위치입니다 (기본값: regular).
-
값
T
설정 값입니다. 모든 설정에는 특정 값 유형이 있으며, 이는 설정과 함께 설명되어 있습니다. 확장 프로그램은 다른 유형의 값을 설정하면 안 됩니다.
-
-
returns
Promise<void>
Chrome 96 이상
-
ChromeSettingScope
ChromeSetting의 범위입니다. 1개
regular
: 일반 프로필 설정 (다른 곳에서 재정의되지 않은 경우 시크릿 프로필에서 상속됨)regular\_only
: 일반 프로필 전용 설정 (시크릿 모드 프로필에서 상속되지 않음)incognito\_persistent
: 브라우저 다시 시작 후에도 유지되는 시크릿 모드 프로필 설정 (일반 환경설정 재정의)incognito\_session\_only
: 시크릿 모드 세션 중에만 설정할 수 있고 시크릿 모드 세션이 종료되면 삭제되는 시크릿 모드 프로필 설정입니다 (일반 및 incognito_persistent 환경설정을 재정의함).
열거형
'regular'
"regular_only"
"incognito_persistent"
"incognito_session_only"
LevelOfControl
1개
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"