chrome.management

Deskripsi

chrome.management API menyediakan cara untuk mengelola daftar ekstensi/aplikasi yang diinstal dan berjalan. Fitur ini sangat berguna untuk ekstensi yang menggantikan halaman Tab Baru bawaan.

Izin

management

Anda harus menyatakan izin "pengelolaan" dalam manifes ekstensi untuk menggunakan API pengelolaan. Contoh:

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

management.getPermissionWarningsByManifest(), management.uninstallSelf(), dan management.getSelf() tidak memerlukan izin pengelolaan.

Jenis

ExtensionDisabledReason

Chrome 44+

Alasan item dinonaktifkan.

Enum

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

    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 dari yang dinyatakan, sehingga Anda dapat mempertimbangkan untuk menggunakan atribut lebar dan tinggi eksplisit pada tag img yang merujuk gambar ini. Lihat dokumentasi manifes tentang ikon untuk detail selengkapnya.

  • id

    string

    ID unik ekstensi.

  • installType

    Cara ekstensi diinstal.

  • isApp

    boolean

    Tidak digunakan lagi

    Gunakan 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 dan yang lebih baru

    Apakah ekstensi ini dapat diaktifkan oleh pengguna. Ini hanya dikembalikan untuk ekstensi yang tidak diaktifkan.

  • name

    string

    Nama ekstensi, aplikasi, atau tema ini.

  • offlineEnabled

    boolean

    Apakah ekstensi, aplikasi, atau tema mendeklarasikan dukungannya untuk offline.

  • optionsUrl

    string

    URL untuk halaman opsi item, jika memilikinya.

  • izin

    string[]

    Menampilkan daftar izin berbasis API.

  • shortName

    string

    Versi singkat dari nama ekstensi, aplikasi, atau tema ini.

  • 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 dan yang lebih baru

    Nama versi ekstensi, aplikasi, atau tema ini jika manifes menentukannya.

ExtensionInstallType

Chrome 44+

Cara ekstensi diinstal. Salah satu dari admin: Ekstensi diinstal karena kebijakan administratif, development: Ekstensi dimuat secara terbuka 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"

"normal"

"sideload"

ExtensionType

Chrome 44+

Jenis ekstensi, aplikasi, atau tema ini.

Enum

"packaged_app"

"legacy_packaged_app"

"login_screen_extension"

IconInfo

Informasi tentang ikon milik ekstensi, aplikasi, atau tema.

Properti

  • ukuran

    angka

    Angka yang mewakili 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 versi ikon hitam putih (misalnya, untuk menunjukkan bahwa ekstensi dinonaktifkan), tambahkan ?grayscale=true ke URL.

LaunchType

Ini semua adalah jenis peluncuran aplikasi yang memungkinkan.

Enum

"OPEN_AS_REGULAR_TAB"

"OPEN_AS_PINNED_TAB"

"OPEN_AS_WINDOW"

"OPEN_FULL_SCREEN"

UninstallOptions

Chrome 88 dan yang lebih baru

Opsi tentang cara menangani uninstal ekstensi.

Properti

  • showConfirmDialog

    boolean opsional

    Apakah dialog konfirmasi-uninstal akan meminta pengguna atau tidak. Nilai defaultnya adalah false (salah) untuk uninstal mandiri. Jika ekstensi meng-uninstal ekstensi lainnya, parameter ini akan diabaikan dan dialog akan selalu ditampilkan.

Metode

createAppShortcut()

Promise
chrome.management.createAppShortcut(
  id: string,
  callback?: function,
)

Menampilkan opsi untuk membuat pintasan aplikasi. Di Mac, hanya pintasan aplikasi terpaket yang dapat dibuat.

Parameter

  • id

    string

    ID ini harus berupa ID dari item aplikasi management.ExtensionInfo.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    ()=>void

Hasil

  • Promise<void>

    Chrome 88 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

Promise
chrome.management.generateAppForLink(
  url: string,
  title: string,
  callback?: function,
)

Membuat aplikasi untuk URL. Menampilkan aplikasi bookmark yang dihasilkan.

Parameter

  • string

    URL halaman web. Skema URL hanya boleh "http" atau "https".

  • string

    Judul aplikasi yang dibuat.

  • fungsi opsional

    Parameter callback terlihat seperti:

    (result: ExtensionInfo)=>void

Hasil

  • Promise<ExtensionInfo>

    Chrome 88 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

get()

Promise
chrome.management.get(
  id: string,
  callback?: function,
)

Menampilkan informasi tentang ekstensi, aplikasi, atau tema yang diinstal yang memiliki ID tertentu.

Parameter

Hasil

  • Promise<ExtensionInfo>

    Chrome 88 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

getAll()

Promise
chrome.management.getAll(
  callback?: function,
)

Menampilkan daftar informasi tentang ekstensi dan aplikasi yang terinstal.

Parameter

Hasil

  • Promise<ExtensionInfo[]>

    Chrome 88 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

getPermissionWarningsById()

Promise
chrome.management.getPermissionWarningsById(
  id: string,
  callback?: function,
)

Menampilkan daftar peringatan izin untuk ID ekstensi yang diberikan.

Parameter

  • id

    string

    ID ekstensi yang sudah diinstal.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (permissionWarnings: string[])=>void

    • permissionWarnings

      string[]

Hasil

  • Promise<string[]>

    Chrome 88 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

getPermissionWarningsByManifest()

Promise
chrome.management.getPermissionWarningsByManifest(
  manifestStr: string,
  callback?: function,
)

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.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (permissionWarnings: string[])=>void

    • permissionWarnings

      string[]

Hasil

  • Promise<string[]>

    Chrome 88 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

getSelf()

Promise
chrome.management.getSelf(
  callback?: function,
)

Menampilkan informasi tentang ekstensi panggilan, aplikasi, atau tema. Catatan: Fungsi ini dapat digunakan tanpa meminta izin 'pengelolaan' dalam manifes.

Parameter

Hasil

  • Promise<ExtensionInfo>

    Chrome 88 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

installReplacementWebApp()

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

Meluncurkan replace_web_app yang ditentukan dalam manifes. Meminta pengguna untuk menginstal jika belum diinstal.

Parameter

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    ()=>void

Hasil

  • Promise<void>

    Chrome 88 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

launchApp()

Promise
chrome.management.launchApp(
  id: string,
  callback?: function,
)

Meluncurkan aplikasi.

Parameter

  • id

    string

    ID ekstensi aplikasi.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    ()=>void

Hasil

  • Promise<void>

    Chrome 88 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

setEnabled()

Promise
chrome.management.setEnabled(
  id: string,
  enabled: boolean,
  callback?: function,
)

Mengaktifkan atau menonaktifkan aplikasi atau ekstensi. Umumnya, fungsi ini harus dipanggil dalam konteks gestur pengguna (mis. pengendali onclick untuk tombol), dan dapat menampilkan UI konfirmasi native kepada pengguna sebagai cara mencegah penyalahgunaan.

Parameter

  • id

    string

    Ini harus berupa ID dari item management.ExtensionInfo.

  • diaktifkan

    boolean

    Apakah item ini harus diaktifkan atau dinonaktifkan.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    ()=>void

Hasil

  • Promise<void>

    Chrome 88 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

setLaunchType()

Promise
chrome.management.setLaunchType(
  id: string,
  launchType: LaunchType,
  callback?: function,
)

Menyetel jenis peluncuran aplikasi.

Parameter

  • id

    string

    ID ini harus berupa ID dari item aplikasi management.ExtensionInfo.

  • launchType

    Jenis peluncuran target. Selalu periksa dan pastikan jenis peluncuran ini berada di ExtensionInfo.availableLaunchTypes, karena jenis peluncuran yang tersedia bervariasi di berbagai platform dan konfigurasi.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    ()=>void

Hasil

  • Promise<void>

    Chrome 88 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

uninstall()

Promise
chrome.management.uninstall(
  id: string,
  options?: UninstallOptions,
  callback?: function,
)

Meng-uninstal aplikasi atau ekstensi yang saat ini terinstal. Catatan: Fungsi ini tidak berfungsi di lingkungan terkelola jika pengguna tidak diizinkan untuk meng-uninstal ekstensi/aplikasi yang ditentukan. Jika uninstal gagal (misalnya, pengguna membatalkan dialog), promise akan ditolak atau callback akan dipanggil dengan menetapkan runtime.lastError.

Parameter

Hasil

  • Promise<void>

    Chrome 88 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

uninstallSelf()

Promise
chrome.management.uninstallSelf(
  options?: UninstallOptions,
  callback?: function,
)

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
  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    ()=>void

Hasil

  • Promise<void>

    Chrome 88 dan yang lebih baru

    Promise didukung di Manifes V3 dan yang lebih baru, tetapi callback disediakan untuk kompatibilitas mundur. Anda tidak dapat menggunakan keduanya pada panggilan fungsi yang sama. Promise di-resolve dengan jenis yang sama yang diteruskan ke callback.

Peristiwa

onDisabled

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

Diaktifkan saat aplikasi atau ekstensi telah dinonaktifkan.

Parameter

onEnabled

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

Diaktifkan saat aplikasi atau ekstensi telah diaktifkan.

Parameter

onInstalled

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

Diaktifkan saat aplikasi atau ekstensi telah diinstal.

Parameter

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