chrome.management

설명

chrome.management API는 설치되어 실행 중인 확장 프로그램/앱 목록을 관리하는 방법을 제공합니다. 이는 내장된 새 탭 페이지를 재정의하는 확장 프로그램에 특히 유용합니다.

권한

management

관리 API를 사용하려면 확장 프로그램 매니페스트에서 '관리' 권한을 선언해야 합니다. 예를 들면 다음과 같습니다.

{
  "name": "My extension",
  ...
  "permissions": [
    "management"
  ],
  ...
}

management.getPermissionWarningsByManifest(), management.uninstallSelf(), management.getSelf()에는 관리 권한이 필요하지 않습니다.

유형

ExtensionDisabledReason

Chrome 44 이상

항목이 사용 중지된 이유입니다.

열거형

ExtensionInfo

설치된 확장 프로그램, 앱 또는 테마에 관한 정보입니다.

속성

  • appLaunchUrl

    문자열 선택사항

    실행 URL입니다 (앱인 경우에만 표시됨).

  • availableLaunchTypes

    LaunchType[] 선택사항

    현재 사용 가능한 시작 유형 (앱에만 있음)

  • 설명

    string

    이 확장 프로그램, 앱 또는 테마의 설명입니다.

  • disabledReason

    항목이 사용 중지된 이유입니다.

  • 사용 설정됨

    boolean

    현재 사용 또는 사용 중지 여부입니다.

  • homepageUrl

    문자열 선택사항

    이 확장 프로그램, 앱 또는 테마의 홈페이지 URL입니다.

  • hostPermissions

    문자열[]

    호스트 기반 권한 목록을 반환합니다.

  • 아이콘

    IconInfo[] 선택사항

    아이콘 정보의 목록입니다. 이는 매니페스트에 선언된 것만 반영하며 해당 URL의 실제 이미지는 선언된 것보다 크거나 작을 수 있으므로 이러한 이미지를 참조하는 img 태그에 명시적인 너비 및 높이 속성을 사용하는 것이 좋습니다. 자세한 내용은 아이콘에 관한 매니페스트 문서를 참고하세요.

  • id

    string

    확장 프로그램의 고유 식별자입니다.

  • installType

    확장 프로그램이 설치된 방법입니다.

  • isApp

    boolean

    지원 중단됨

    management.ExtensionInfo.type을(를) 사용하세요.

    앱인 경우 true입니다.

  • launchType

    LaunchType 선택사항

    앱 실행 유형 (앱에만 있음)입니다.

  • mayDisable

    boolean

    사용자가 이 확장 프로그램을 사용 중지하거나 제거할 수 있는지 여부입니다.

  • mayEnable

    부울 선택사항

    Chrome 62 이상

    사용자가 이 확장 프로그램을 사용 설정할 수 있는지 여부입니다. 사용 설정되지 않은 확장 프로그램에 대해서만 반환됩니다.

  • 이름

    string

    이 확장 프로그램, 앱 또는 테마의 이름입니다.

  • offlineEnabled

    boolean

    확장 프로그램, 앱 또는 테마에서 오프라인을 지원한다고 선언하는지 여부

  • optionsUrl

    string

    상품의 옵션 페이지(있는 경우)의 URL입니다.

  • 권한

    문자열[]

    API 기반 권한 목록을 반환합니다.

  • shortName

    string

    이 확장 프로그램, 앱 또는 테마의 간단한 버전입니다.

  • 유형

    이 확장 프로그램, 앱 또는 테마의 유형입니다.

  • updateUrl

    문자열 선택사항

    이 확장 프로그램, 앱 또는 테마의 업데이트 URL입니다.

  • 버전

    string

    이 확장 프로그램, 앱 또는 테마의 버전입니다.

  • versionName

    문자열 선택사항

    Chrome 50 이상

    이 확장 프로그램, 앱 또는 테마의 버전 이름입니다(매니페스트에 지정된 경우).

ExtensionInstallType

Chrome 44 이상

확장 프로그램이 설치된 방법입니다. admin 중 하나: 관리 정책으로 인해 확장 프로그램이 설치되었습니다. development: 확장 프로그램이 개발자 모드에서 압축해제되어 로드되었습니다. normal: 확장 프로그램이 .crx 파일을 통해 정상적으로 설치되었습니다. sideload: 확장 프로그램이 컴퓨터의 다른 소프트웨어에 의해 설치되었습니다. other: 확장 프로그램이 다른 방법으로 설치되었습니다.

열거형

ExtensionType

Chrome 44 이상

이 확장 프로그램, 앱 또는 테마의 유형입니다.

열거형

"legacy_packaged_app"

"login_screen_extension"

IconInfo

확장 프로그램, 앱 또는 테마에 속한 아이콘에 관한 정보

속성

  • 크기

    숫자

    아이콘의 너비와 높이를 나타내는 숫자입니다. 가능한 값에는 128, 48, 24, 16이 포함되나 이에 국한되지 않습니다.

  • url

    string

    이 아이콘 이미지의 URL입니다. 그레이 스케일 버전의 아이콘을 표시하려면 (예: 확장 프로그램이 사용 중지되었음을 나타냄) URL에 ?grayscale=true을 추가합니다.

LaunchType

모두 가능한 앱 실행 유형입니다.

열거형

UninstallOptions

Chrome 88 이상

확장 프로그램 제거 처리 방법에 관한 옵션입니다.

속성

  • showConfirmDialog

    부울 선택사항

    제거 확인 대화상자에서 사용자에게 메시지를 표시해야 하는지 여부입니다. 자체 제거의 경우 기본값은 false입니다. 확장 프로그램이 다른 확장 프로그램을 제거하면 이 매개변수가 무시되고 대화상자가 항상 표시됩니다.

방법

createAppShortcut()

프로미스
chrome.management.createAppShortcut(
  id: string,
  callback?: function,
)

앱 바로가기를 만드는 옵션을 표시합니다. Mac에서는 패키지 앱 바로가기만 만들 수 있습니다.

매개변수

  • id

    string

    management.ExtensionInfo 앱 항목의 ID여야 합니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    ()=>void

반환 값

  • Promise<void>

    Chrome 88 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

프로미스
chrome.management.generateAppForLink(
  url: string,
  title: string,
  callback?: function,
)

URL용 앱을 생성합니다. 생성된 북마크 앱을 반환합니다.

매개변수

  • string

    웹페이지의 URL입니다. URL 스키마는 'http' 또는 'https'로만 사용할 수 있습니다.

  • string

    생성된 앱의 제목입니다.

  • 함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (result: ExtensionInfo)=>void

반환 값

  • Promise<ExtensionInfo>

    Chrome 88 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

get()

프로미스
chrome.management.get(
  id: string,
  callback?: function,
)

지정된 ID가 있는 설치된 확장 프로그램, 앱 또는 테마에 관한 정보를 반환합니다.

매개변수

반환 값

  • Promise<ExtensionInfo>

    Chrome 88 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

getAll()

프로미스
chrome.management.getAll(
  callback?: function,
)

설치된 확장 프로그램 및 앱에 관한 정보 목록을 반환합니다.

매개변수

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (result: ExtensionInfo[])=>void

반환 값

  • Promise<ExtensionInfo[]>

    Chrome 88 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

getPermissionWarningsById()

프로미스
chrome.management.getPermissionWarningsById(
  id: string,
  callback?: function,
)

지정된 확장 프로그램 ID의 권한 경고 목록을 반환합니다.

매개변수

  • id

    string

    이미 설치된 확장 프로그램의 ID입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (permissionWarnings: string[])=>void

    • permissionWarnings

      문자열[]

반환 값

  • 프로미스<string[]>

    Chrome 88 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

getPermissionWarningsByManifest()

프로미스
chrome.management.getPermissionWarningsByManifest(
  manifestStr: string,
  callback?: function,
)

지정된 확장 프로그램 매니페스트 문자열의 권한 경고 목록을 반환합니다. 참고: 이 함수는 매니페스트에서 '관리' 권한을 요청하지 않고 사용할 수 있습니다.

매개변수

  • manifestStr

    string

    확장 프로그램 매니페스트 JSON 문자열입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (permissionWarnings: string[])=>void

    • permissionWarnings

      문자열[]

반환 값

  • 프로미스<string[]>

    Chrome 88 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

getSelf()

프로미스
chrome.management.getSelf(
  callback?: function,
)

통화 확장 프로그램, 앱 또는 테마에 관한 정보를 반환합니다. 참고: 이 함수는 매니페스트에서 '관리' 권한을 요청하지 않고 사용할 수 있습니다.

매개변수

반환 값

  • Promise<ExtensionInfo>

    Chrome 88 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

installReplacementWebApp()

Promise Chrome 77 이상
chrome.management.installReplacementWebApp(
  callback?: function,
)

매니페스트에 지정된 replace_web_app을 실행합니다. 아직 설치하지 않은 경우 설치하라는 메시지를 사용자에게 표시합니다.

매개변수

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    ()=>void

반환 값

  • Promise<void>

    Chrome 88 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

launchApp()

프로미스
chrome.management.launchApp(
  id: string,
  callback?: function,
)

애플리케이션을 시작합니다.

매개변수

  • id

    string

    애플리케이션의 확장 ID입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    ()=>void

반환 값

  • Promise<void>

    Chrome 88 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

setEnabled()

프로미스
chrome.management.setEnabled(
  id: string,
  enabled: boolean,
  callback?: function,
)

앱 또는 확장 프로그램을 사용 또는 사용 중지합니다. 대부분의 경우 이 함수는 사용자 동작 (예: 버튼의 온클릭 핸들러) 컨텍스트에서 호출해야 하며 악용을 방지하기 위한 방법으로 사용자에게 기본 확인 UI를 표시할 수도 있습니다.

매개변수

  • id

    string

    management.ExtensionInfo 항목의 ID여야 합니다.

  • 사용 설정됨

    boolean

    이 항목의 사용 설정 또는 사용 중지 여부입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    ()=>void

반환 값

  • Promise<void>

    Chrome 88 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

setLaunchType()

프로미스
chrome.management.setLaunchType(
  id: string,
  launchType: LaunchType,
  callback?: function,
)

앱의 실행 유형을 설정합니다.

매개변수

  • id

    string

    management.ExtensionInfo 앱 항목의 ID여야 합니다.

  • launchType

    타겟 실행 유형입니다. 사용 가능한 실행 유형은 플랫폼과 구성에 따라 다르므로 이 실행 유형이 ExtensionInfo.availableLaunchTypes에 있는지 항상 확인해야 합니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    ()=>void

반환 값

  • Promise<void>

    Chrome 88 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

uninstall()

프로미스
chrome.management.uninstall(
  id: string,
  options?: UninstallOptions,
  callback?: function,
)

현재 설치된 앱 또는 확장 프로그램을 제거합니다. 참고: 이 함수는 사용자가 지정된 확장 프로그램/앱을 제거하도록 허용되지 않은 경우 관리 환경에서 작동하지 않습니다. 제거에 실패하면 (예: 사용자가 대화상자를 취소) 프로미스가 거부되거나 runtime.lastError가 설정된 콜백이 호출됩니다.

매개변수

반환 값

  • Promise<void>

    Chrome 88 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

uninstallSelf()

프로미스
chrome.management.uninstallSelf(
  options?: UninstallOptions,
  callback?: function,
)

통화 확장 프로그램을 제거합니다. 참고: 이 함수는 매니페스트에서 '관리' 권한을 요청하지 않고 사용할 수 있습니다. 사용자가 지정된 확장 프로그램/앱을 제거할 수 없는 경우 관리 환경에서 이 기능이 작동하지 않습니다.

매개변수

  • 옵션

    UninstallOptions 선택사항

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    ()=>void

반환 값

  • Promise<void>

    Chrome 88 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

이벤트

onDisabled

chrome.management.onDisabled.addListener(
  callback: function,
)

앱 또는 확장 프로그램이 사용 중지되면 실행됩니다.

매개변수

onEnabled

chrome.management.onEnabled.addListener(
  callback: function,
)

앱 또는 확장 프로그램이 사용 설정되었을 때 실행됩니다.

매개변수

onInstalled

chrome.management.onInstalled.addListener(
  callback: function,
)

앱 또는 확장 프로그램이 설치되면 시작됩니다.

매개변수

onUninstalled

chrome.management.onUninstalled.addListener(
  callback: function,
)

앱 또는 확장 프로그램이 제거될 때 실행됩니다.

매개변수

  • 콜백

    기능

    callback 매개변수는 다음과 같습니다.

    (id: string)=>void

    • id

      string