chrome.extension

Deskripsi

chrome.extension API memiliki utilitas yang dapat digunakan oleh halaman ekstensi apa pun. API ini mencakup dukungan untuk bertukar pesan antara ekstensi dan skrip kontennya atau antar-ekstensi, seperti yang dijelaskan secara mendetail di Penerusan Pesan.

Jenis

ViewType

Chrome 44+

Jenis tampilan ekstensi.

Enum

"tab"

"popup"

Properti

inIncognitoContext

Benar untuk skrip konten yang berjalan di dalam tab samaran, dan untuk halaman ekstensi yang berjalan di dalam proses samaran. Yang terakhir hanya berlaku untuk ekstensi dengan incognito_behavior 'split'.

Jenis

boolean

lastError

≤ MV2 Tidak digunakan lagi sejak Chrome 58

Gunakan runtime.lastError.

Tetapkan untuk masa aktif callback jika API ekstensi asinkron telah menyebabkan error. Jika tidak ada error yang terjadi, lastError akan menjadi undefined.

Jenis

objek

Properti

  • pesan

    string

    Deskripsi error yang telah terjadi.

Metode

getBackgroundPage()

Khusus latar depan
chrome.extension.getBackgroundPage()

Menampilkan objek 'window' JavaScript untuk halaman latar belakang yang berjalan di dalam ekstensi saat ini. Menampilkan null jika ekstensi tidak memiliki halaman latar belakang.

Hasil

  • Periode | tidak ditentukan

getExtensionTabs()

≤ MV2 Khusus latar depan Tidak digunakan lagi
chrome.extension.getExtensionTabs(
  windowId?: number,
)

Gunakan extension.getViews {type: "tab"}.

Menampilkan array objek 'window' JavaScript untuk setiap tab yang berjalan di dalam ekstensi saat ini. Jika windowId ditentukan, hanya menampilkan objek 'window' dari tab yang dilampirkan ke jendela yang ditentukan.

Parameter

  • windowId

    number opsional

Hasil

  • Window[]

    Array objek jendela global

getURL()

≤ MV2 Tidak digunakan lagi sejak Chrome 58
chrome.extension.getURL(
  path: string,
)

Gunakan runtime.getURL.

Mengonversi jalur relatif dalam direktori penginstalan ekstensi menjadi URL yang sepenuhnya memenuhi syarat.

Parameter

  • jalur

    string

    Jalur ke resource dalam ekstensi yang dinyatakan relatif terhadap direktori penginstalannya.

Hasil

  • string

    URL yang sepenuhnya memenuhi syarat ke resource.

getViews()

Khusus latar depan
chrome.extension.getViews(
  fetchProperties?: object,
)

Menampilkan array objek 'window' JavaScript untuk setiap halaman yang berjalan di dalam ekstensi saat ini.

Parameter

  • fetchProperties

    objek opsional

    • tabId

      number opsional

      Chrome 54+

      Menemukan tampilan sesuai dengan ID tab. Jika kolom ini dihilangkan, semua tampilan akan ditampilkan.

    • jenis

      ViewType opsional

      Jenis tampilan yang akan diperoleh. Jika dihilangkan, menampilkan semua tampilan (termasuk halaman dan tab latar belakang).

    • windowId

      number opsional

      Jendela yang akan dibatasi penelusurannya. Jika dihilangkan, menampilkan semua tampilan.

Hasil

  • Window[]

    Array objek global

isAllowedFileSchemeAccess()

Promise
chrome.extension.isAllowedFileSchemeAccess(
  callback?: function,
)

Mengambil status akses ekstensi ke skema 'file://'. Hal ini sesuai dengan setelan 'Izinkan akses ke URL File' per ekstensi yang dikontrol pengguna dan dapat diakses melalui halaman chrome://extensions.

Parameter

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      boolean

      Benar jika ekstensi dapat mengakses skema 'file://', salah jika tidak.

Hasil

  • Promise<boolean>

    Chrome 99+

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain harus menggunakan callback.

isAllowedIncognitoAccess()

Promise
chrome.extension.isAllowedIncognitoAccess(
  callback?: function,
)

Mengambil status akses ekstensi ke mode Samaran. Hal ini sesuai dengan setelan 'Diizinkan di Samaran' per ekstensi yang dikontrol pengguna dan dapat diakses melalui halaman chrome://extensions.

Parameter

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      boolean

      Benar jika ekstensi memiliki akses ke mode Samaran, salah jika tidak.

Hasil

  • Promise<boolean>

    Chrome 99+

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain harus menggunakan callback.

sendRequest()

Promise &leq; MV2 Tidak digunakan lagi
chrome.extension.sendRequest(
  extensionId?: string,
  request: any,
  callback?: function,
)

Gunakan runtime.sendMessage.

Mengirim satu permintaan ke pemroses lain dalam ekstensi. Serupa dengan runtime.connect, tetapi hanya mengirim satu permintaan dengan respons opsional. Peristiwa extension.onRequest diaktifkan di setiap halaman ekstensi.

Parameter

  • extensionId

    string opsional

    ID ekstensi ekstensi yang ingin Anda hubungkan. Jika dihilangkan, defaultnya adalah ekstensi Anda sendiri.

  • minta

    apa pun

  • callback

    fungsi opsional

    Chrome 99+

    Parameter callback terlihat seperti:

    (response: any) => void

    • respons

      apa pun

      Objek respons JSON yang dikirim oleh pengendali permintaan. Jika terjadi error saat terhubung ke ekstensi, callback akan dipanggil tanpa argumen dan runtime.lastError akan ditetapkan ke pesan error.

Hasil

  • Promise<any>

    Chrome 99+

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain harus menggunakan callback.

setUpdateUrlData()

chrome.extension.setUpdateUrlData(
  data: string,
)

Menetapkan nilai parameter CGI ap yang digunakan di URL update ekstensi. Nilai ini diabaikan untuk ekstensi yang dihosting di Galeri Ekstensi Chrome.

Parameter

  • data

    string

Acara

onRequest

&leq; MV2 Tidak digunakan lagi
chrome.extension.onRequest.addListener(
  callback: function,
)

Gunakan runtime.onMessage.

Diaktifkan saat permintaan dikirim dari proses ekstensi atau skrip konten.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (request: any, sender: runtime.MessageSender, sendResponse: function) => void

    • minta

      apa pun

    • sendResponse

      fungsi

      Parameter sendResponse terlihat seperti:

      () => void

onRequestExternal

&leq; MV2 Tidak digunakan lagi
chrome.extension.onRequestExternal.addListener(
  callback: function,
)

Gunakan runtime.onMessageExternal.

Diaktifkan saat permintaan dikirim dari ekstensi lain.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (request: any, sender: runtime.MessageSender, sendResponse: function) => void

    • minta

      apa pun

    • sendResponse

      fungsi

      Parameter sendResponse terlihat seperti:

      () => void