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