Deskripsi
API chrome.management
menyediakan cara untuk mengelola aplikasi dan ekstensi yang diinstal.
Izin
management
Anda harus mendeklarasikan izin "pengelolaan" dalam manifes ekstensi untuk menggunakan Management API. Contoh:
{ "name": "My extension", ... "permissions": [ "management" ], ... }
management.getPermissionWarningsByManifest()
, management.uninstallSelf()
, dan management.getSelf()
tidak memerlukan izin pengelolaan.
Jenis
ExtensionDisabledReason
Alasan item dinonaktifkan.
Enum
"unknown"
"permissions_increase"
ExtensionInfo
Informasi tentang ekstensi, aplikasi, atau tema yang diinstal.
Properti
- appLaunchUrl
string opsional
URL peluncuran (hanya ada untuk aplikasi).
- availableLaunchTypes
LaunchType[] opsional
Jenis peluncuran yang tersedia saat ini (hanya ada untuk aplikasi).
- deskripsi
string
Deskripsi ekstensi, aplikasi, atau tema ini.
- disabledReason
ExtensionDisabledReason opsional
Alasan item dinonaktifkan.
- diaktifkan
boolean
Apakah saat ini diaktifkan atau dinonaktifkan.
- homepageUrl
string opsional
URL halaman beranda ekstensi, aplikasi, atau tema ini.
- hostPermissions
string[]
Menampilkan daftar izin berbasis host.
- ikon
IconInfo[] opsional
Daftar informasi ikon. Perhatikan bahwa hal ini hanya mencerminkan apa yang dideklarasikan dalam manifes, dan gambar sebenarnya di URL tersebut mungkin lebih besar atau lebih kecil daripada yang dideklarasikan, jadi Anda dapat mempertimbangkan untuk menggunakan atribut lebar dan tinggi eksplisit pada tag img yang mereferensikan gambar ini. Lihat dokumentasi manifes tentang ikon untuk mengetahui detail selengkapnya.
- id
string
ID unik ekstensi.
- installType
Cara ekstensi diinstal.
- isApp
boolean
Tidak digunakan lagiGunakan
management.ExtensionInfo.type
.Benar jika ini adalah aplikasi.
- launchType
LaunchType opsional
Jenis peluncuran aplikasi (hanya ada untuk aplikasi).
- mayDisable
boolean
Apakah ekstensi ini dapat dinonaktifkan atau di-uninstal oleh pengguna.
- mayEnable
boolean opsional
Chrome 62+Apakah ekstensi ini dapat diaktifkan oleh pengguna. Nilai ini hanya ditampilkan untuk ekstensi yang tidak diaktifkan.
- nama
string
Nama ekstensi, aplikasi, atau tema ini.
- offlineEnabled
boolean
Apakah ekstensi, aplikasi, atau tema menyatakan bahwa ekstensi, aplikasi, atau tema tersebut mendukung offline.
- optionsUrl
string
URL untuk halaman opsi item, jika ada.
- izin
string[]
Menampilkan daftar izin berbasis API.
- shortName
string
Versi singkat nama ekstensi, aplikasi, atau tema ini.
- jenis
Jenis ekstensi, aplikasi, atau tema ini.
- updateUrl
string opsional
URL update ekstensi, aplikasi, atau tema ini.
- versi
string
Versi ekstensi, aplikasi, atau tema ini.
- versionName
string opsional
Chrome 50+Nama versi ekstensi, aplikasi, atau tema ini jika manifes menentukannya.
ExtensionInstallType
Cara ekstensi diinstal. Salah satu dari admin
: Ekstensi diinstal karena kebijakan administratif, development
: Ekstensi dimuat tanpa di-unzip dalam mode developer, normal
: Ekstensi diinstal secara normal melalui file .crx, sideload
: Ekstensi diinstal oleh software lain di komputer, other
: Ekstensi diinstal dengan cara lain.
Enum
"admin"
"pengembangan"
"normal"
"sideload"
"lainnya"
ExtensionType
Jenis ekstensi, aplikasi, atau tema ini.
Enum
"ekstensi"
"hosted_app"
"packaged_app"
"legacy_packaged_app"
"tema"
"login_screen_extension"
IconInfo
Informasi tentang ikon milik ekstensi, aplikasi, atau tema.
Properti
- ukuran
angka
Angka yang merepresentasikan lebar dan tinggi ikon. Nilai yang mungkin mencakup (tetapi tidak terbatas pada) 128, 48, 24, dan 16.
- url
string
URL untuk gambar ikon ini. Untuk menampilkan ikon versi hitam putih (misalnya, untuk menunjukkan bahwa ekstensi dinonaktifkan), tambahkan
?grayscale=true
ke URL.
LaunchType
Berikut semua jenis peluncuran aplikasi yang mungkin.
Enum
"OPEN_AS_REGULAR_TAB"
"OPEN_AS_PINNED_TAB"
"OPEN_AS_WINDOW"
"OPEN_FULL_SCREEN"
UninstallOptions
Opsi untuk cara menangani peng-uninstalan ekstensi.
Properti
- showConfirmDialog
boolean opsional
Apakah dialog konfirmasi uninstal harus meminta pengguna atau tidak. Nilai defaultnya adalah false untuk penghapusan instalasi sendiri. Jika ekstensi meng-uninstal ekstensi lain, parameter ini akan diabaikan dan dialog akan selalu ditampilkan.
Metode
createAppShortcut()
chrome.management.createAppShortcut(
id: string,
): Promise<void>
Opsi tampilan untuk membuat pintasan aplikasi. Di Mac, hanya pintasan aplikasi yang dikemas yang dapat dibuat.
Parameter
- id
string
Nilai ini harus berupa ID dari item aplikasi
management.ExtensionInfo
.
Hasil
-
Promise<void>
Chrome 88+
generateAppForLink()
chrome.management.generateAppForLink(
url: string,
title: string,
): Promise<ExtensionInfo>
Membuat aplikasi untuk URL. Menampilkan aplikasi bookmark yang dibuat.
Parameter
- url
string
URL halaman web. Skema URL hanya dapat berupa "http" atau "https".
- judul
string
Judul aplikasi yang dihasilkan.
Hasil
-
Promise<ExtensionInfo>
Chrome 88+
get()
chrome.management.get(
id: string,
): Promise<ExtensionInfo>
Menampilkan informasi tentang ekstensi, aplikasi, atau tema yang diinstal yang memiliki ID tertentu.
Parameter
- id
string
ID dari item
management.ExtensionInfo
.
Hasil
-
Promise<ExtensionInfo>
Chrome 88+
getAll()
chrome.management.getAll(): Promise<ExtensionInfo[]>
Menampilkan daftar informasi tentang ekstensi dan aplikasi yang diinstal.
Hasil
-
Promise<ExtensionInfo[]>
Chrome 88+
getPermissionWarningsById()
chrome.management.getPermissionWarningsById(
id: string,
): Promise<string[]>
Menampilkan daftar peringatan izin untuk ID ekstensi tertentu.
Parameter
- id
string
ID ekstensi yang sudah diinstal.
Hasil
-
Promise<string[]>
Chrome 88+
getPermissionWarningsByManifest()
chrome.management.getPermissionWarningsByManifest(
manifestStr: string,
): Promise<string[]>
Menampilkan daftar peringatan izin untuk string manifes ekstensi tertentu. Catatan: Fungsi ini dapat digunakan tanpa meminta izin 'pengelolaan' dalam manifes.
Parameter
- manifestStr
string
String JSON manifes ekstensi.
Hasil
-
Promise<string[]>
Chrome 88+
getSelf()
chrome.management.getSelf(): Promise<ExtensionInfo>
Menampilkan informasi tentang ekstensi, aplikasi, atau tema yang memanggil. Catatan: Fungsi ini dapat digunakan tanpa meminta izin 'pengelolaan' dalam manifes.
Hasil
-
Promise<ExtensionInfo>
Chrome 88+
installReplacementWebApp()
chrome.management.installReplacementWebApp(): Promise<void>
Meluncurkan replacement_web_app yang ditentukan dalam manifes. Meminta pengguna untuk menginstal jika belum diinstal.
Hasil
-
Promise<void>
Chrome 88+
launchApp()
chrome.management.launchApp(
id: string,
): Promise<void>
Meluncurkan aplikasi.
Parameter
- id
string
ID ekstensi aplikasi.
Hasil
-
Promise<void>
Chrome 88+
setEnabled()
chrome.management.setEnabled(
id: string,
enabled: boolean,
): Promise<void>
Mengaktifkan atau menonaktifkan aplikasi atau ekstensi. Dalam sebagian besar kasus, fungsi ini harus dipanggil dalam konteks gestur pengguna (misalnya, handler onclick untuk tombol), dan dapat menampilkan UI konfirmasi native kepada pengguna sebagai cara untuk mencegah penyalahgunaan.
Parameter
- id
string
Nilai ini harus berupa ID dari item
management.ExtensionInfo
. - diaktifkan
boolean
Apakah item ini harus diaktifkan atau dinonaktifkan.
Hasil
-
Promise<void>
Chrome 88+
setLaunchType()
chrome.management.setLaunchType(
id: string,
launchType: LaunchType,
): Promise<void>
Menetapkan jenis peluncuran aplikasi.
Parameter
- id
string
Nilai ini harus berupa ID dari item aplikasi
management.ExtensionInfo
. - launchType
Jenis peluncuran target. Selalu periksa dan pastikan jenis peluncuran ini ada di
ExtensionInfo.availableLaunchTypes
, karena jenis peluncuran yang tersedia berbeda-beda di berbagai platform dan konfigurasi.
Hasil
-
Promise<void>
Chrome 88+
uninstall()
chrome.management.uninstall(
id: string,
options?: UninstallOptions,
): Promise<void>
Meng-uninstal aplikasi atau ekstensi yang saat ini diinstal. Catatan: Fungsi ini tidak berfungsi di lingkungan terkelola jika pengguna tidak diizinkan untuk meng-uninstal ekstensi/aplikasi yang ditentukan. Jika peng-uninstalan gagal (misalnya, pengguna membatalkan dialog), promise akan ditolak atau callback akan dipanggil dengan runtime.lastError
yang ditetapkan.
Parameter
- id
string
Nilai ini harus berupa ID dari item
management.ExtensionInfo
. - opsi
UninstallOptions opsional
Hasil
-
Promise<void>
Chrome 88+
uninstallSelf()
chrome.management.uninstallSelf(
options?: UninstallOptions,
): Promise<void>
Meng-uninstal ekstensi panggilan. Catatan: Fungsi ini dapat digunakan tanpa meminta izin 'pengelolaan' dalam manifes. Fungsi ini tidak berfungsi di lingkungan terkelola jika pengguna tidak diizinkan untuk meng-uninstal ekstensi/aplikasi yang ditentukan.
Parameter
- opsi
UninstallOptions opsional
Hasil
-
Promise<void>
Chrome 88+
Acara
onDisabled
chrome.management.onDisabled.addListener(
callback: function,
)
Diaktifkan saat aplikasi atau ekstensi telah dinonaktifkan.
Parameter
- callback
fungsi
Parameter
callback
terlihat seperti:(info: ExtensionInfo) => void
- info
-
onEnabled
chrome.management.onEnabled.addListener(
callback: function,
)
Diaktifkan saat aplikasi atau ekstensi telah diaktifkan.
Parameter
- callback
fungsi
Parameter
callback
terlihat seperti:(info: ExtensionInfo) => void
- info
-
onInstalled
chrome.management.onInstalled.addListener(
callback: function,
)
Diaktifkan saat aplikasi atau ekstensi telah diinstal.
Parameter
- callback
fungsi
Parameter
callback
terlihat seperti:(info: ExtensionInfo) => void
- info
-
onUninstalled
chrome.management.onUninstalled.addListener(
callback: function,
)
Diaktifkan saat aplikasi atau ekstensi telah di-uninstal.
Parameter
- callback
fungsi
Parameter
callback
terlihat seperti:(id: string) => void
- id
string
-