Periksa halaman ini secara rutin untuk mempelajari perubahan pada ekstensi Chrome, dokumentasi ekstensi, kebijakan terkait, atau perubahan lainnya. Anda akan menemukan pemberitahuan lainnya yang diposting di Ekstensi Google Grup. Jadwal Chrome mencantumkan tanggal rilis stabil dan beta.
Chrome 128: Pencocokan header respons di Declarative Net Request
Mulai Chrome 128, kami akan menambahkan dukungan untuk pencocokan header respons di Declarative Net Request API. Hal ini adalah permintaan umum, terutama untuk mencocokkan header Content-Type, dan kami merancang API yang sesuai bersama dengan WebExtensions Community Group.
Kami telah memperbarui referensi API untuk menyertakan kolom responseHeaders
dan excludedResponseHeaders
baru. Anda dapat menggunakannya untuk memeriksa keberadaan dan nilai {i>header<i} tertentu.
Sebagai bagian dari pembaruan ini, kami telah menambahkan bagian evaluasi aturan baru ke dokumentasi kami yang menjelaskan cara pencocokan aturan. Khususnya untuk pencocokan header, aturan hanya dapat berjalan setelah header respons diterima, sehingga aturan tersebut diterapkan di tahap berikutnya daripada aturan lainnya. Artinya permintaan mencapai server sebelum diblokir atau dialihkan.
Video: Apa yang dimaksud dengan skrip konten?
Pelajari skrip konten di Ekstensi Chrome, termasuk cara mendaftarkan CSS dan JavaScript agar berjalan di halaman tertentu. Tonton video lengkapnya.
Pembaruan kebijakan penting
Tim Chrome Web Store telah memublikasikan serangkaian pembaruan di halaman Kebijakan Program Developer yang dirancang untuk mendorong pengembangan produk berkualitas tinggi, mencegah perilaku menipu, dan memastikan izin pengguna yang tepat. Rebecca Soares, pengelola kebijakan Chrome Web Store, telah merangkum semua pembaruan di Postingan blog Ekstensi Chrome: Pembaruan kebijakan penting.
Postingan blog: Yang terjadi di Ekstensi Chrome, Juli 2024
Dalam tiga bulan terakhir, kami telah meluncurkan beberapa update signifikan dan fitur baru, termasuk awal penghentian Manifes V2. Dapatkan informasi terbaru dalam Apa yang terjadi di Ekstensi Chrome edisi Juli.
Video: Apa itu Kode yang Dihosting Jarak Jauh?
Patrick dari tim Ekstensi Chrome menjelaskan konsep Remotely Hosted Code (RHC) pada Ekstensi Chrome. Pelajari alasan RHC tidak lagi diizinkan, cara mendeteksinya, dan apa yang harus dilakukan jika ekstensi Anda perlu diupdate. Tonton video lengkapnya.
Chrome 127: Action.openPop API baru
Mulai Chrome 127, action.openPopup
API tersedia untuk semua ekstensi. Sebelumnya, fitur ini hanya tersedia di Canary
atau ekstensi yang
diinstal oleh kebijakan.
Video: Kepercayaan & Wawancara tim keselamatan
Tim DevRel Ekstensi Chrome berdiskusi dengan Trust & Tim keamanan yang memimpin peninjauan di Chrome Web Store untuk mengajukan pertanyaan Anda. Tonton video lengkapnya.
Postingan blog: Penghentian penggunaan Manifes V2 dimulai
Mulai 3 Juni di saluran Chrome Beta, Dev, dan Canary, jika pengguna masih menginstal ekstensi Manifes V2, beberapa pengguna akan mulai melihat banner peringatan saat mengunjungi halaman pengelolaan ekstensi mereka - chrome://extensions - yang memberi tahu mereka bahwa beberapa ekstensi (Manifes V2) yang telah mereka instal akan segera tidak didukung lagi. Baca selengkapnya di pengumuman resmi
Update pada UI Panel Samping
Baru-baru ini kami melakukan beberapa perubahan pada UI Panel Samping, termasuk menambahkan ikon pin dan menghapus ikon panel samping global. Baca selengkapnya di PSA dan lihat dokumentasi dan contoh terbaru kami.
Postingan blog: Ekstensi Chrome di Google I/O 2024
Google I/O lainnya sebentar lagi akan kami mulai dan kami telah membahas semua pembaruan ekstensi yang menarik. Buka YouTube untuk menonton video lengkapnya dan membaca postingan blog kami untuk mengetahui beberapa sorotan.
Lewati peninjauan untuk perubahan Permintaan Jaring Deklaratif yang memenuhi syarat
Chrome Web Store kini memungkinkan Anda melewati peninjauan untuk perubahan yang memenuhi syarat saat menggunakan Declarative Net Request API. Pelajari lebih lanjut kriteria kelayakan dan cara ikut serta di dokumentasi Chrome Web Store.
deployPercentage tersedia di Chrome Web Store API
Baru-baru ini kami memperbarui dokumentasi Chrome Web Store API untuk menyertakan informasi tentang deployPercentage
, yang memungkinkan Anda menetapkan persentase deployment peluncuran sebagian. Pelajari deployPercentage
.
Chrome 126: Uji Coba Origin dalam ekstensi
Chrome 126 memperkenalkan kolom manifest.json baru - trial_tokens
, sehingga Anda dapat ikut serta dalam Uji Coba Origin dan Uji Coba Penghentian Penggunaan di semua platform ekstensi. Baca panduan untuk mengetahui informasi selengkapnya.
Postingan blog: Yang terjadi di Ekstensi Chrome-April 2024
Kami telah memublikasikan edisi baru What's Happening in Chrome Extensions. Postingan ini membahas apa yang telah dikerjakan tim ekstensi selama beberapa bulan terakhir. Hal ini meliputi: Rollback Versi di Chrome Web Store, dukungan Firebase Auth yang lebih baik, serta peluncuran dan update API lainnya.
Rollback versi di Dasbor Developer Chrome Web Store
Roll back ekstensi Anda ke versi yang dipublikasikan sebelumnya di Chrome Web Store—tanpa peninjauan tambahan. Baca postingan blog dan dokumentasi untuk informasi selengkapnya.
Chrome 124: Advanced documentScan API
documentScan
API lanjutan
kini tersedia di ChromeOS untuk menemukan dan mengambil gambar dari lampiran
pemindai dokumen.
Chrome 124: Dukungan WebGPU di Service Worker
Mulai Chrome 124, pekerja layanan mendukung WebGPU. Untuk memulai cepat, lihat contoh ekstensi WebGPU.
Chrome 123: Events API mendukung pemfilteran berdasarkan blok CIDR
Events API kini mendukung pemfilteran
oleh blok Classless Inter-Domain Routing (CIDR). Blok CIDR adalah kumpulan dari
Alamat IP yang memiliki awalan jaringan yang sama dan jumlah bit yang sama. Sebelumnya,
developer yang perlu memfilter beberapa alamat IP yang diperlukan untuk mengonfigurasi filter
aturan untuk setiap alamat
dalam rentang blok. Sekarang saat ekstensi melakukan panggilan
addListener()
, aturan yang diteruskan berarti pengendali peristiwa hanya akan dipanggil
jika bagian host URL adalah
alamat IP dan ada di setiap CIDR
yang ditentukan dalam array.
Chrome Web Store: Pembaruan pada persyaratan panjang nama ekstensi
Di Chrome Web Store, sekarang ada batas
universal 75 karakter untuk
kolom "name"
ekstensi di
manifest.json. Sebelumnya, batas untuk bahasa Inggris adalah 45 karakter, dan ada
tidak ada pembatasan untuk kolom "name"
di lokalitas lain.
Hal ini awalnya dimaksudkan untuk memungkinkan perbedaan budaya dan bahasa yang mungkin tidak dapat direkam dalam jumlah karakter yang sama. Sayangnya, fitur ini disalahgunakan oleh sejumlah kecil pengembang untuk mengirim spam ke toko. Sebagai seorang hasil tersebut kami memperkenalkan batas universal baru, yang meningkat hingga 75 karakter. Batas ini mencakup hampir semua ekstensi di Play Store saat ini, jadi kemungkinan tidak tindakan yang akan diperlukan oleh Anda sebagai akibat dari perubahan ini. Jika Anda mencoba mengunggah ekstensi yang memiliki nama lebih panjang dari batas maksimum, file yang diupload akan diblokir oleh toko.
Postingan blog: perjalanan eyeo untuk menguji penangguhan pekerja layanan
Dalam postingan yang ditulis oleh tim Mesin Ekstensi eyeo ini, kami membahas masalah pengujian pekerja layanan ekstensi. Di Manifest V2, ekstensi berada di halaman latar belakang, yang aktif selama siklus proses ekstensi. Manifes V3 menggunakan pekerja layanan sebagai gantinya, dan pekerja layanan, secara desain, menghemat sumber daya dengan mematikan saat tidak diperlukan. Ini menghadirkan tantangan pengujian tertentu. Postingan ini menjelaskan cara eyeo mengatasi tantangan ini.
Chrome 123: Alarm kini berjalan saat perangkat dalam mode tidur
Alarm yang disetel menggunakan chrome.alarms
API
tidak lagi tertunda saat perangkat beralih ke mode tidur. Saat perangkat bangun,
alarm akan berbunyi sekali, berapa pun banyak alarm yang terlewat. Misalnya,
alarm diatur untuk berbunyi sekali satu jam dan perangkat yang digunakannya sedang tidur dari
pukul 00.55 hingga 02.05, hanya alarm pukul 02.00 yang memicu peristiwa onAlarm
.
Satelit akan menyala sedekat mungkin pada pukul 02.00, dan segera setelah perangkat aktif
saat tidur.
Perubahan ini menjadikan Chrome selaras dengan perilaku yang disetujui di Grup Komunitas Ekstensi Web.
Postingan blog: Perubahan pada perilaku bfcache dengan port pesan ekstensi
Back/forward cache (bfcache) adalah browser
pengoptimalan yang memungkinkan navigasi mundur dan maju instan. Dimulai dalam
Di Chrome 123, jika halaman dengan port ekstensi terbuka disimpan dalam bfcache,
saluran pesan ditutup, yang berarti tidak ada pesan yang akan dikirim ke laman tersebut.
Oleh karena itu, skrip ekstensi harus memproses peristiwa siklus proses seperti
onDisconnect
dan siapkan sambungan baru saat halaman dipulihkan dari BFCache.
Untuk informasi selengkapnya dan kode contoh, lihat Perubahan pada perilaku BFCache dengan port pesan ekstensi.
Chrome 122: Dukungan Promise pada API ekstensi asinkron
Kami telah selesai menerapkan dukungan Promise untuk semua API ekstensi asinkron
metode. Hal ini dilakukan untuk memodernisasi metode API dengan meningkatkan ergonomi
berurusan dengan operasi asinkron. Beberapa metode (misalnya,
desktopCapture.chooseDesktopMedia()
) terus hanya mendukung callback
karena platformnya saat ini tidak kompatibel dengan Promise. Untuk mundur
kompatibilitas mundur, callback masih didukung. Jika Anda menemukan Promise yang gagal,
harap laporkan bug.
Panduan baru untuk komunikasi real time
Kami baru saja memublikasikan panduan tentang opsi real time dalam ekstensi. Update real-time menyediakan jalur komunikasi instan dari server Anda langsung ke penginstalan ekstensi. Selain itu, kami memiliki panduan baru untuk menggunakan chrome.gcm dan Web Push.
Panduan dan contoh baru: Menguji penghentian pekerja layanan
Kami baru saja memublikasikan panduan tentang cara Menguji penghentian pekerja layanan dengan Puppeteer. Contoh yang disertakan menunjukkan hal ini di Puppeteer dan Selenium.
Contoh yang diperbarui untuk pesan native
Kami baru saja memublikasikan contoh yang diperbarui untuk pesan native. API ini memungkinkan ekstensi Anda memulai dan berkomunikasi dengan aplikasi lain. Terima kasih kepada kontributor GitHub Shubham-Rasal untuk mengerjakan hal ini.
Chrome 121: Properti baru yang diakses di tab.Tab
Properti baru bernama lastAccessed
ditambahkan ke objek tabs.Tab
. Properti ini menunjukkan kapan tab terakhir diaktifkan. Nilai yang ditampilkan dalam milidetik sejak epoch.
Chrome 121: "Latar belakang" tidak didukung kunci sekarang memberikan peringatan
Dalam perubahan dari Manifes V2 ke Manifes V3, turunan kunci manifes "background"
diubah untuk mengakomodasi penggantian skrip latar belakang dengan pekerja layanan ekstensi. Sebelumnya, menambahkan kunci Manifes V2 "scripts"
, "page"
, atau "persistent"
ke kunci "background"
dari ekstensi Manifes V3 akan menampilkan error. Keberadaan kunci ini sekarang memicu peringatan.
Tindakan ini dilakukan untuk mengaktifkan penggunaan satu file manifes dalam ekstensi di beberapa browser, sesuai dengan proposal di grup komunitas.
Chrome 120: Perincian alarm minimum dikurangi menjadi 30 detik
Mulai Chrome 120, ekstensi Manifes V3 dapat menggunakan chrome.alarms
API dengan penundaan atau periode selama 30 detik, bukan memerlukan nilai 60 detik atau lebih.
Postingan blog: Melanjutkan transisi ke Manifes V3
Linimasa dukungan Manifes V2 telah diperbarui. Lihat postingan blog November 2023 kami untuk mengetahui detailnya.
Postingan blog: Peningkatan dukungan pemfilteran konten di Manifes V3
Pelajari cara kami meningkatkan deklaratifNetRequest API di postingan blog baru kami.
Postingan blog: Yang baru di Chrome 120 untuk Ekstensi
Chrome 120 Beta baru-baru ini dirilis. Untuk ringkasan pembaruan penting yang relevan bagi developer ekstensi, baca postingan blog baru kami: Yang baru di Chrome 120 untuk Ekstensi. Rilis ini juga menandai tonggak pencapaian besar dengan menghapus dua item terakhir (userScript, pengendali file di ChromeOS) dari daftar kekurangan data platform penting.
PSA: Perubahan pada penanganan URL kebijakan privasi di Dasbor Developer
Kebijakan privasi di Dasbor Developer kini ditambahkan di tingkat item. Hal ini memungkinkan Anda untuk menyediakan kebijakan privasi yang berbeda per item. Baca selengkapnya tentang hal ini dalam PSA kami.
Video: Chat dengan Matt Frisbie
Kami baru saja memublikasikan video baru di channel YouTube Chrome untuk Developer melalui chat dengan Pakar Developer Google dan penulis Matt Frisbie. Tonton di sini.
Panduan baru tentang ekstensi pengujian
Kami baru saja memublikasikan panduan baru tentang cara menulis pengujian otomatis untuk ekstensi, termasuk cara menulis pengujian unit dan keduanya panduan umum dan tutorial tentang pengujian menyeluruh.
Postingan blog: Yang terjadi di Ekstensi Chrome - Oktober 2023
Kami baru saja memublikasikan edisi kedua What's Happening in Chrome Extensions. Postingan ini membahas apa yang telah dikerjakan tim ekstensi selama beberapa bulan terakhir, termasuk, mengatasi masalah stabilitas pekerja layanan, dan membuat progres yang bagus untuk mengatasi semua kesenjangan platform MV3. Kami juga membagikan rilis API mendatang yang menarik seperti Bacaan Daftar API dan User Scripts API.
Peningkatan batas kumpulan aturan statis di Declarative Net Request API
Mengikuti masukan di Ekstensi Web Grup Komunitas, kami meningkatkan secara signifikan batas kumpulan aturan statis aktif dari 10 menjadi 50. Selain itu, kami meningkatkan jumlah total kumpulan aturan statis yang diizinkan dari 50 menjadi 100. Ini adalah yang saat ini tersedia dalam Canary.
Panduan yang lebih baik seputar kode yang dihosting dari jarak jauh
Persyaratan untuk Manifes V3 adalah ekstensi tidak boleh lagi menggunakan kode yang dihosting dari jarak jauh. Meskipun hal ini telah menjadi bagian panduan migrasi kami sejak awal, menurut kami ada baiknya memperbaiki panduan terkait masalah ini. Halaman tersebut sekarang memberikan lebih banyak informasi, yang menjelaskan hal yang masih mungkin dilakukan di Manifes V3 dan memberikan informasi selengkapnya terkait strategi untuk upgrade.
Terdapat tambahan terkait dengan Memecahkan masalah pelanggaran Chrome Web Store. Bagian baru menjelaskan alasan umum penolakan ekstensi dengan kode yang dihosting dari jarak jauh.
Chrome 118: isUrlFilterCaseSensitive kini ditetapkan secara default ke false
Mulai Chrome 118, isUrlFilterCaseSensitive
di chrome.declarativeNetRequest
API telah diubah dari default menjadi false
. Jika ingin mempertahankan perilaku lama, Anda dapat secara eksplisit menetapkan isUrlFilterCaseSensitive
ke true
di
aturan deklaratifNetRequest.
Hal ini mengikuti diskusi di Ekstensi Web Grup Komunitas. Firefox dan Safari telah menerapkan perubahan yang serupa.
Dokumentasi tentang cookie dan Web Storage API
Kami memublikasikan panduan baru tentang cara kerja API penyimpanan web dan cookie di ekstensi Chrome. Ini mencakup detail tentang perubahan partisi penyimpanan dan cookie di Privacy Sandbox, project yang sedang berlangsung untuk menghentikan penggunaan cookie pihak ketiga pembuatan serangkaian API platform web baru, dan menjelaskan cara kerjanya di ekstensi.
Contoh ekstensi kini dapat ditelusuri
Baru-baru ini kami membuat halaman yang memungkinkan Anda menelusuri contoh ekstensi Chrome. Halaman penelusuran memiliki beberapa opsi. Kotak penelusuran memungkinkan Anda menelusuri teks dalam contoh judul. Anda dapat membatasi penelusuran berdasarkan izin atau API ekstensi. Filter tambahan memungkinkan Anda membatasi penelusuran ke contoh API atau fungsional (kasus penggunaan).
Halaman contoh baru ini dibuat oleh peserta Google Summer of Code, Xuezhou Dai, yang juga memberikan kontribusi beberapa sampel baru. Anda dapat membaca pengalaman mereka selama musim panas lalu di postingan mereka di blog kami.
Seperti sebelumnya, contoh kode kami masih tersedia di GitHub untuk di-clone atau forking.
Chrome 118: Perubahan pada file pembuka: URL skema
Mulai Chrome 118, ekstensi akan memerlukan "Izinkan akses ke URL file" yang diaktifkan dari halaman chrome://extensions
untuk membuka URL skema file:// menggunakan Tabs atau Windows API. Anda dapat memeriksa akses ini secara terprogram dengan memanggil chrome.extension.isAllowedFileSchemeAccess()
. Firefox sudah membatasi URL file, dan Safari mendukung perubahan tersebut. Untuk informasi selengkapnya, baca postingan di grup Google ekstensi.
Chrome 117: Perlindungan URL yang diperluas pada navigasi API ekstensi
Sebelumnya, navigasi yang dipicu dari panggilan API ekstensi untuk tabs.update()
, tabs.create()
, dan windows.create()
menghasilkan error untuk beberapa URL chrome://. Selain itu, memanggil tabs.update()
dengan URL JavaScript juga dilarang. Di versi 117, perlindungan pada URL JavaScript ini telah diperluas ke metode tabs.create()
dan sejumlah URL chrome:// tambahan telah ditambahkan ke daftar URL terlarang yang berlaku untuk semua metode yang disebutkan sebelumnya.
Panduan yang lebih baik untuk deklaratifNetRequest API
chrome.declarativeNetRequest
API memblokir atau mengubah permintaan jaringan dengan menentukan aturan deklaratif. Hal ini memungkinkan ekstensi mengubah permintaan jaringan tanpa mencegatnya dan melihat kontennya, sehingga memberikan lebih banyak privasi kepada pengguna. SQL juga sulit digunakan. Dengan mempertimbangkan hal itu, kami telah menulis ulang panduan ini dengan cara yang menurut kami memberikan gambaran yang lebih jelas tentang cara menerapkan set aturan deklaratif. Baca bagian baru di link di atas.
Menggunakan akun Google Analytics Anda dengan Chrome Web Store
Chrome Web Store menawarkan integrasi dengan Google Analytics, yang memungkinkan Anda melihat analisis untuk listingan Chrome Web Store Anda selain tampilan yang ditawarkan di Dasbor Developer. Untuk informasi selengkapnya, baca Menggunakan akun Google Analytics dengan Chrome Web Store.
Chrome 115: DevTools melangkahi skrip konten secara default
Skrip konten yang dimasukkan kini berada di daftar yang diabaikan DevTools secara default. Hal ini tidak memengaruhi titik henti sementara, tetapi artinya skrip konten akan dilewati selama proses debug dan pengecualian dari skrip ini akan diabaikan. Ketika skrip konten terbuka di tab Sumber, banner akan memberi tahu Anda jika skrip tersebut aktif dan memberikan opsi untuk menghapus skrip konten Anda dari daftar yang diabaikan. Untuk menonaktifkan perilaku ini, buka DevTools, buka Setelan, lalu Abaikan daftar. Untuk mempelajari lebih lanjut, lihat Yang baru di DevTools.
Chrome 116 beta: Lebih dari yang dapat kami muat di sini
Chrome 116 adalah rilis besar untuk ekstensi. Sekarang Anda dapat membuka panel samping secara terprogram. Metode baru memungkinkan Anda mengetahui apakah ada dokumen di luar layar yang aktif. Service worker mendapatkan peningkatan server. Ada cukup peningkatan di 116 yang telah kami tulis sebuah postingan blog untuk membahasnya. Chrome 116 masih dalam versi beta mulai 19 Juli.
Postingan blog: Yang terjadi di Ekstensi Chrome
Kami baru saja memublikasikan ringkasan perubahan dan peningkatan pada ekstensi tahun ini. Postingan ini membahas berbagai fitur besar tahun ini, termasuk Side Panel API, peningkatan service worker, dan dokumen offscreen. Anda juga dapat melihat hal yang sedang kami kerjakan untuk kuartal ini. Artikel ini mencantumkan lebih banyak lagi, dengan link ke semua.
Panduan dan contoh baru: Pelajari cara menggunakan Google Analytics 4 di ekstensi Chrome Anda
Kami memublikasikan Google Analytics baru dan panduan geolokasi serta contohnya:
- Versi terbaru panduan Google Analytics kami yang menjelaskan cara menggunakan Google Analytics 4 di ekstensi Chrome Anda. Kami juga telah menambahkan contoh Google Analytics 4 yang berfungsi ke repositori contoh GitHub. Lihat
google-analytics.js
untuk kode yang relevan yang terkait dengan Google Analytics. - Panduan Geolokasi baru dan tiga contoh yang menunjukkan cara mengakses geolokasi di pekerja layanan, skrip konten, pop-up, dan panel samping.
Chrome 115: Tentukan beberapa alasan di chrome.offscreen.createDocument()
Anda kini dapat menentukan beberapa enum reason
saat memanggil chrome.offscreen.createDocument()
. Gunakan ini saat dokumen di balik layar akan digunakan untuk beberapa tujuan yang berbeda. Browser menggunakan alasan yang diberikan untuk menentukan masa berlaku dokumen di balik layar.
Alat baru: Alat Pengujian Update Ekstensi
Kami baru saja merilis Alat Pengujian Update Ekstensi, server update ekstensi lokal yang dapat digunakan untuk menguji update pada Ekstensi Chrome selama pengembangan lokal, termasuk pemberian izin. Alat ini menunjukkan alur update pengguna, termasuk menonaktifkan ekstensi hingga pengguna memberikan izin yang baru diminta. Alat ini sangat berguna untuk menyimulasikan perubahan izin yang diminta saat mengupdate ekstensi dari Manifes V2 ke Manifes V3.
Chrome 114: API Panel Samping Baru
Memperkenalkan Side Panel API baru, platform pendamping yang memungkinkan pengguna mengakses alat bersama konten yang mereka jelajahi. Untuk mempelajari lebih lanjut, buka Referensi Side Panel API. Selain itu, kami telah menambahkan banyak contoh panel samping ke repositori contoh GitHub. Kami juga membagikan info selengkapnya tentang panel samping di postingan blog baru Designing a Superior User Experience with the New Side Panel API. Kebijakan pedoman kualitas dan praktik terbaik kami juga telah ditinjau untuk memberikan panduan lebih lanjut cara membuat ekstensi panel samping berkualitas tinggi.
Masukan Anda penting dalam membuat API ini; sampaikan pendapat dan permintaan fitur Anda di grup chromium. Nantikan info terbaru seiring kami terus meningkatkan kualitas Side Panel API.
Sampel Baru: WASM di ekstensi
Ada dua contoh baru yang tersedia yang menunjukkan cara menggunakan WASM dalam ekstensi:
- Menggunakan WASM dalam Manifes V3 menunjukkan metode umum untuk menyertakan modul WASM.
- Penggunaan WASM sebagai modul di Manifes V3 menunjukkan cara menggunakannya dalam modul.
Terima kasih banyak kepada kontributor GitHub @daidr untuk contoh ini.
Panduan migrasi Manifes V3 yang diperbarui
Kami telah memperbarui bagian Masalah Umum dalam panduan migrasi Manifes V3 dengan daftar terbaru kesenjangan platform ekstensi yang ingin kami tutup sebelum mengumumkan linimasa penghentian penggunaan Manifes V2 baru.
Merekam audio dan video dengan Manifes V3
Kami baru saja memublikasikan artikel baru bernama Perekaman audio dan screenshot, yang mencakup perekaman audio atau video dari tab, jendela, atau layar di Manifes V3. Artikel ini menjelaskan beberapa pendekatan untuk perekaman yang melibatkan API chrome.tabCapture
dan fungsi getDisplayMedia()
.
Chrome 114: Peningkatan kuota storage.local
Kami telah meningkatkan kuota untuk properti storage.local
menjadi sekitar 10 MB. Hal ini disetujui oleh Grup Komunitas Ekstensi Web. Hal ini menyesuaikan storage.local
dengan storage.session
yang diubah di Chrome 112.
Tutorial dan bantuan pekerja layanan ekstensi baru
Service Worker merupakan bagian integral dari Ekstensi Chrome. Kami baru saja memublikasikan tutorial yang menjelaskan dasar-dasar pendaftaran, proses debug, dan interaksi dengan Service Worker. Kami juga telah menambahkan Panduan pekerja layanan baru yang menjelaskan konsep penting secara lebih mendetail. Kami akan memperluas bagian ini dalam beberapa bulan mendatang.
Tips pemecahan masalah lainnya untuk pelanggaran Web Store
Untuk membantu publikasi Chrome Web Store, kami menambahkan panduan baru dalam dua area. Panduan untuk fungsi minimum berpusat pada pemberian manfaat dan memperkaya pengalaman menjelajah kepada pengguna. Panduan untuk iklan afiliasi bertujuan membuat pengguna mengetahui ekstensi menggunakan link atau kode afiliasi untuk monetisasi, dan memberi mereka beberapa kontrol dengan meminta tindakan pengguna sebelum penyertaan.
Petunjuk baru untuk Pengonversi Manifes Ekstensi
Kami telah menulis ulang README untuk Pengonversi Manifes Ekstensi agar lebih mudah melihat apa yang perlu Anda lakukan setelah menjalankan alat. Pengonversi membantu memigrasikan ekstensi yang dibangun di Manifes V2 ke Manifes V3. README baru menjelaskan fungsi alat tersebut menggunakan kata-kata yang hampir sama dengan kata-kata yang ada dalam checklist panduan migrasi. Pengonversi tidak melakukan semuanya, tetapi menghilangkan banyak tugas yang tidak memerlukan panggilan penilaian manusia.
Chrome 113: Alasan baru untuk dokumen di balik layar
Kami telah menambahkan dua jenis alasan baru ke Offscreen Documents API. Gunakan LOCAL_STORAGE
untuk mengakses localStorage API platform web. Menggunakan WORKER
saat membuat pekerja web.
Google Analytics 4 kini ada di Dasbor Developer
Dasbor Developer Chrome Web Store kini mendukung Google Analytics 4 (GA4). Kami telah menyederhanakan penyiapan Google Analytics dan mempermudah pengelolaan akses untuk penayang grup. Jika sebelumnya menggunakan Google Universal Analytics untuk melacak aktivitas listingan Play Store, Anda harus mengambil tindakan paling lambat 1 Juli 2023 untuk memastikan Anda terus menerima data tentang listingan Play Store Anda. Untuk informasi selengkapnya, lihat postingan di Grup Google Ekstensi Chromium.
File Handling API hadir di ChromeOS
File Handler API tersedia untuk eksperimen di ChromeOS dalam Canary untuk versi 112 dan 113. Protokol ini memungkinkan ekstensi di ChromeOS membuka file dengan jenis MIME dan ekstensi file yang ditentukan. Untuk menerapkan penanganan file, tambahkan kumpulan aturan ke manifest.json
. Fitur ini berfungsi sama seperti Progressive web app. Untuk informasi selengkapnya, lihat artikel di tempat lain di situs ini.
Untuk mengaktifkan proses penanganan file:
- Mulai versi 112, luncurkan Chrome menggunakan tanda
--enable-features=ExtensionWebFileHandlers
, mulai versi 112 - Mulai 113, tempel
os://flags/#extension-web-file-handlers
ke omnibox Chrome, lalu pilih 'Aktif' dari menu {i>dropdown<i}.
Kami berharap dapat meluncurkan fitur ini di Chrome 115, pada akhir Juni. Pantau halaman ini untuk mendapatkan info terbaru.
Contoh Baru: deklarasi dinamis dan injeksi terprogram
Kami telah membuat contoh baru untuk chrome.scripting
API. Contoh ini menunjukkan deklarasi dinamis, tempat skrip konten didaftarkan saat runtime, dan injeksi terprogram, tempat skrip dieksekusi di tab yang sudah terbuka.
Sampel Baru: Kasus penggunaan Declarative Net Request
Tersedia tiga contoh baru yang menunjukkan Declarative Net Request API. Masing-masing menunjukkan penerapan satu kasus penggunaan. Contoh pertama menunjukkan cara memblokir cookie. Dua sisanya mendemonstrasikan pemblokiran dan pengalihan URL.
Chrome 112: Peningkatan kuota storage.session
Dari Chrome 112, kuota untuk properti storage.session
telah ditingkatkan menjadi sekitar 10 MB. Perubahan ini disetujui dalam Web Extensions Community Group: https://github.com/w3c/webextensions/issues/350
Chrome 109: Dokumen di luar layar
Dokumen di luar layar kini tersedia di ekstensi Manifes V3. Alat ini membantu transisi dari halaman latar belakang ke pekerja layanan ekstensi dengan memberikan dukungan untuk fitur dan API terkait DOM. Untuk informasi selengkapnya, baca postingan blog.
Chrome 110: Apakah ekstensi diaktifkan
Metode chrome.action.isEnabled()
secara terprogram memeriksa apakah ekstensi telah diaktifkan untuk tab tertentu. Dengan begitu, Anda tidak perlu mempertahankan status aktif tab. Metode baru ini mengambil ID tab dan referensi ke callback dan menampilkan boolean. Kode ini memiliki satu batasan: tab yang dibuat menggunakan chrome.declarativeContent
selalu menampilkan nilai salah.
(Namespace chrome.action
baru-baru ini mendapatkan metode baru untuk mengontrol tampilan badge ekstensi. Untuk mengetahui informasi selengkapnya, lihat Menyetel warna badge.)
Chrome 110: Perubahan pada waktu tunggu tidak ada aktivitas pekerja layanan
Sebelumnya, pekerja layanan ekstensi akan sering mati pada tanda lima menit. Kami telah mengubah perilaku ini agar lebih mirip dengan masa aktif pekerja layanan di web. Pekerja layanan ekstensi akan dinonaktifkan setelah tidak aktif selama tiga puluh detik atau jika satu aktivitas memerlukan waktu lebih dari 5 menit untuk diproses. Untuk informasi selengkapnya, lihat Masa aktif pekerja layanan ekstensi yang lebih lama.
Postingan: Penghentian jeda Manifes V2
Linimasa penghentian penggunaan Manifes V2 sedang dalam peninjauan dan eksperimen yang dijadwalkan untuk awal tahun 2023 ditunda. Untuk informasi selengkapnya, baca pembaruan di Grup Google ekstensi chromium.
Chrome 110: Menyetel warna badge
Namespace chrome.action
memiliki dua metode baru agar Anda dapat lebih mengontrol badge ekstensi tampilan. Metode setBadgeTextColor()
dan getBadgeTextColor()
memungkinkan ekstensi mengubah dan mengkueri warna teks badge ikon toolbar. Saat digunakan dengan setBadgeBackgroundColor
dan getBadgeBackgroundColor
, metode baru ini memungkinkan Anda menerapkan desain dan konsistensi merek.
Postingan blog: Detail selengkapnya tentang transisi ke Manifes V3
Kami telah memperjelas linimasa penghentian penggunaan Manifes V2. Linimasa dukungan Manifes V2 juga telah diperbarui untuk mencerminkan informasi ini.
Update dokumen: Masalah umum saat bermigrasi ke Manifes V3
Kami telah menyusun daftar fitur utama yang saat ini sedang dalam pengembangan dan bug terbuka. Tujuan kami dalam halaman ini adalah membantu developer agar lebih memahami kondisi platform saat ini dan fitur apa yang dapat mereka targetkan saat bersiap menghadapi masa depan.
Chrome Web Store: "kartu promo besar" upload gambar dihapus
Chrome Web Store telah menghapus "kotak promo besar" mengupload UI dari tab Listingan Play Store item di dasbor developer. Perubahan ini tidak memengaruhi pengalaman pengguna akhir karena gambar ini tidak digunakan di UI konsumen. Lihat postingan ekstensi chromium ini untuk detail tambahan.
Chrome 106: Mengizinkan halaman di url file:// untuk mengakses resource yang dapat diakses web
Asal buram seperti iframe sandbox dan impor dinamis juga akan dapat mengakses resource yang dapat diakses web, menurut crbug.com/1219825#c11.
Chrome 106: Memperbaiki bug yang mengizinkan argumen akhir yang salah pada beberapa fungsi API asinkron
Sebelumnya, Manifes V3 yang memanggil API asinkron dapat memberikan argumen akhir yang tidak valid dan Chrome tidak akan mengalami error. Dengan perbaikan ini, Chrome kini akan melakukan error dan melaporkan dengan benar bahwa tidak ada tanda tangan yang cocok. Developer dianjurkan untuk memeriksa ekstensi mereka di Canary untuk menemukan error jika mereka tidak sengaja menggunakan tanda tangan yang salah untuk panggilan API yang akan rusak karena perbaikan bug ini.
Postingan blog: Perubahan analisis Chrome Web Store
Chrome Web Store memiliki pengalaman analisis item yang diperbarui untuk Dasbor Developer Chrome Web Store. Dasbor baru lebih mudah dipahami dengan cepat dan menggabungkan informasi yang paling berguna sejak awal. Baca postingan blog untuk mengetahui informasi selengkapnya.
Chrome 105: promise untuk Identity API
Fungsi pada Identity API sekarang
mendukung panggilan berbasis promise. Hal ini disertai dengan sedikit perubahan pada permukaan
identity.getAuthToken()
, dengan
return asinkron yang ditetapkan ke panggilan berbasis promise akan memiliki "token" dan "grantedScopes" sebagai parameter
pada satu objek (bukan versi callback yang menerimanya sebagai argumen terpisah ke
).
Chrome 104: API favicon baru untuk Manifes V3
Ekstensi Manifes V3 kini dapat mengakses favicon menggunakan pola URL baru: chrome-extension://<id>/_favicon/
, dengan chrome://favicons
API platform Manifes V2. Lihat dokumen Favicon API untuk informasi selengkapnya.
Pembaruan dokumen: Pengungkapan pedagang/non-pedagang developer
Menambahkan identifikasi developer non-pedagang/non-pedagang yang memberi tahu developer untuk menyatakan sendiri status pedagang/non-pedagang mereka secara akurat.
Chrome 103: Wasm di Manifes V3 memerlukan wasm-unsafe-eval
Chrome tidak lagi memberikan ekstensi script-src: wasm-unsafe-eval
secara default. Ekstensi yang menggunakan
WebAssembly kini harus menambahkan perintah dan nilai ini secara eksplisit ke extension_pages
di
Deklarasi content_security_policy
.
Chrome 103: Perubahan pintasan MV3 langsung diterapkan
Saat mengubah pintasan keyboard ekstensi Manifes V3 di chrome://extensions/shortcuts
,
pembaruan sekarang segera diterapkan. Sebelumnya, ekstensi harus dimuat ulang sebelum
perubahan ini akan diterapkan.
Chrome 102: Skrip konten dinamis di platform utama
Skrip konten yang terdaftar secara dinamis kini dapat menentukan
world tempat aset akan dimasukkan. Lihat
scripting.registerContentScripts()
untuk mengetahui detailnya.
Chrome 102: Kolom manifes baru "optional_host_permissions"
Ekstensi Manifes V3 kini dapat menentukan kunci optional_host_permissions
di manifest.json. Ini
memungkinkan ekstensi Manifes V3 mendeklarasikan pola pencocokan opsional untuk host seperti Manifes V2
ekstensi dapat menggunakan kunci optional_permissions
.
Chrome 102: properti injectionSegeraly di skriping.executeScript()
chrome.scripting.executeScript()
kini menerima properti injectImmediately
opsional di
Argumen injection
. Jika perintah ini ada dan disetel ke benar (true), skrip akan segera dimasukkan ke target setelah
mungkin, daripada menunggu document_idle
. Perhatikan bahwa hal ini bukan jaminan bahwa skrip akan
sebelum halaman dimuat karena halaman terus dimuat saat panggilan API sedang dilakukan.
Chrome 102: Dukungan Omnibox API di Manifes V3
Omnibox API kini dapat digunakan pada layanan berbasis pekerja layanan ekstensi. Sebelumnya, beberapa metode API ini akan menampilkan pemanggilan karena dependensi pada kemampuan DOM.
Chrome 102: wasm-unsafe-eval diizinkan di CSP Manifes V3
Ekstensi Manifes V3 kini dapat menyertakan wasm-unsafe-eval
dalam content_security_policy
deklarasi. Perubahan ini memungkinkan ekstensi Manifes V3 menggunakan WebAssembly.
Chrome 102: API storage.session baru
Ekstensi Manifes V3 kini dapat digunakan dalam penyimpanan memori storage.session .
Pembaruan dokumen: Penemuan item Chrome Web Store
Penemuan di Chrome Web Store memberikan ringkasan tentang cara pengguna menemukan item di Chrome Web Store dan cara editor memilih item untuk ditampilkan.
Chrome 101: Peningkatan kondisi domain deklaratifNetRequest
Kondisi aturan declarativeNetRequest telah
diperbarui agar ekstensi dapat menargetkan permintaan dengan lebih baik berdasarkan "permintaan" permintaan dan
"inisiator" domain. Properti kondisi yang relevan adalah initiatorDomains
,
excludedInitiatorDomains
, requestDomains
, dan excludedRequestDomains
. Lihat juga ini
thread ekstensi chromium.
Chrome 100: Menyelesaikan masalah dengan skriping.executeScript() pada tab yang baru dibuat
Memperbaiki masalah yang sudah lama ada saat memanggil scripting.executeScript()
pada tab yang baru dibuat atau
periode default bisa gagal.
Chrome 100: port pesan native membuat pekerja layanan tetap aktif
Menghubungkan ke host pesan native menggunakan chrome.runtime.connectNative()
di
pekerja layanan harus menjaga pekerja layanan tetap hidup selama port terbuka.
Chrome 100: omnibox.setDefaultSuggestion() mendukung promise dan callback
Tujuan
omnibox.setDefaultSuggestion()
sekarang menampilkan promise atau menerima callback untuk memungkinkan developer menentukan kapan
saran telah disetel dengan benar.
Dukungan Chrome 100: i18n.getMessage() di pekerja layanan ekstensi
chrome.i18n.getMessage()
API sekarang
didukung dalam konteks pekerja layanan ekstensi.
Chrome 99: match_origin_as_fallback di Canary
Skrip konten kini dapat menentukan kunci match_origin_as_fallback
untuk dimasukkan ke dalam frame yang
yang terkait dengan frame yang cocok, termasuk frame dengan about:
, data:
, blob:
, dan filesystem:
URL. Lihat skrip konten
dokumentasi untuk detailnya.
Chrome 99: dukungan pekerja layanan ekstensi untuk skema file: di Canary
Ekstensi Manifes V2 dan Manifes V3 berbasis pekerja layanan kini dapat menggunakan Fetch API untuk meminta
URL skema file:
. Akses ke URL skema file:
masih mewajibkan pengguna mengaktifkan 'Izinkan akses
ke URL File untuk ekstensi di halaman chrome://extensions
.
Chrome 99: dukungan promise untuk API pesan di Canary
Dukungan Promise telah ditambahkan ke
tabs.sendMessage
,
runtime.sendMessage
, dan
runtime.sendNativeMessage
untuk
ekstensi yang dibangun untuk Manifes V3.
Pembaruan dokumen: Dokumentasi peninjauan Chrome Web Store
Menambahkan halaman referensi baru yang memberikan ringkasan tentang Chrome Proses peninjauan Web Store dan menjelaskan cara penanganan kebijakan program developer.
Chrome 98: skriping.executeScript() dan scripting.insertCSS() menerima beberapa file
executeScript()
Scripting API
dan metode insertCSS()
sekarang menerima
beberapa file. Sebelumnya, metode ini memerlukan array dengan satu entri file.
Pembaruan dokumen: meninjau pembaruan pemecahan masalah pelanggaran
Halaman Memecahkan masalah pelanggaran Chrome Web Store telah diperbarui untuk memberikan panduan yang lebih mendetail kepada developer terkait alasan umum penolakan.
Chrome 96: dukungan promise yang diperluas ke 27 API lainnya
Rilis ini berisi update promise yang jauh lebih banyak daripada rilis sebelumnya. Update meliputi API ekstensi umum dan khusus ChromeOS. Luaskan bagian berikut untuk mengetahui detailnya.
API Ekstensi
Kini sejumlah API mendukung promise di Manifes V3.
chrome.browsingData
chrome.commands
chrome.contentSettings
chrome.debugger
chrome.downloads
chrome.enterprise.hardwarePlatform
chrome.fontSettings
chrome.history
chrome.instanceID
chrome.permissions
chrome.processes
chrome.search
chrome.sessions
chrome.topSites
Selain itu, API yang menggunakan ChromeSetting
prototipe sekarang juga
mendukung promise. API berikut terpengaruh oleh perubahan ini.
API ChromeOS
chrome.certificateProvider
chrome.documentScan
chrome.enterprise.deviceAttributes
chrome.enterprise.networkingAttributes
chrome.fileBrowserHandler
chrome.fileSystemProvider
chrome.loginState
chrome.printingMetrics
chrome.wallpaper
Chrome 96: skrip konten dinamis
chrome.scripting
API kini mendukung
mendaftar,
memperbarui,
membatalkan pendaftaran, dan mendapatkan daftar skrip konten
pada runtime. Sebelumnya, skrip konten hanya dapat dideklarasikan secara statis dalam
manifest.json atau yang diinjeksi secara terprogram pada runtime dengan
chrome.scripting.executeScript()
Update Dokumen: Linimasa dukungan Manifes V2
Linimasa transisi Manifes V2 ke V3 diumumkan dalam postingan blog ini dan halaman linimasa yang lebih mendetail telah dipublikasikan.
Chrome 96: izin deklaratifNetRequestWithHostAccess
Izin declarativeNetRequestWithHostAccess
yang baru memungkinkan ekstensi menggunakan
chrome.declarativeNetRequest
API di situs
ekstensi memiliki izin {i>host<i}. Tindakan ini juga akan mengaktifkan ekstensi
Manifes V2 yang ada dan menggunakan
webRequest
, webRequestBlocking
, dan izin host khusus situs untuk bermigrasi ke
chrome.declarativeNetRequest
API tanpa
mengharuskan pengguna untuk
menyetujui izin akses baru.
Chrome 95: memasukkan skrip langsung ke halaman
chrome.scripting
API
Metode executeScript()
kini dapat
memasukkan skrip langsung ke dunia utama halaman. Sebelumnya, ekstensi hanya
dapat menginjeksikan secara langsung
ke dunia ekstensi yang terisolasi. Untuk informasi selengkapnya tentang dunia terisolasi, lihat dokumentasi
di skrip konten.
Chrome 95: dukungan promise untuk Storage API
Metode pada chrome.storage
versi Manifes V3
API kini menampilkan promise.
Pembaruan kebijakan: penerapan verifikasi dua langkah
Postingan blog pembaruan kebijakan yang dipublikasikan pada 29 Juni 2021 telah diperbarui untuk memperbaiki jadwal deployment verifikasi dua langkah.
Chrome 94: perubahan aturan statis permintaan net deklaratif
chrome.declarativeNetRequest
kini mendukung
yang menetapkan hingga 50 kumpulan aturan statis
(MAX_NUMBER_OF_STATIC_RULESETS)
dan mengaktifkan hingga 10 kumpulan aturan
(MAX_NUMBER_OF_ENABLED_STATIC_RULESETS)
pada satu waktu.
Chrome 93: dukungan isolasi lintas origin
Baik ekstensi Manifes V2 dan Manifes V3 kini dapat memilih untuk menggunakan isolasi lintas asal. Fitur ini membatasi lintas origin
resource dapat memuat halaman ekstensi dan memungkinkan penggunaan fitur platform web tingkat rendah seperti
SharedArrayBuffer
Keikutsertaan akan diwajibkan mulai Chrome 95.
Pembaruan kebijakan: kebijakan program developer diperbarui
Kebijakan Program Developer Chrome Web Store telah diperbarui klarifikasi terkait taktik penginstalan yang menipu, spam, dan kebijakan konten berulang. Update ini juga menyertakan persyaratan verifikasi dua langkah baru untuk dipublikasikan di Chrome Web Store Simpan. Baca postingan blog untuk mengetahui informasi selengkapnya.
Postingan blog: tindakan ekstensi di Manifes V3
Ekstensi Chrome memiliki chrome.browserAction
dan chrome.pageActions
API selama bertahun-tahun, tetapi Manifes
V3 mengganti keduanya dengan chrome.actions
API generik. Ini
kami akan membahas histori API ini dan apa yang berubah di Manifes V3. Baca postingannya.
Postingan blog: memperkenalkan chrome.scripting
chrome.scripting
API adalah Manifest V3 API baru yang berfokus
dalam pembuatan skrip. Dalam postingan ini, kami akan menggali motivasi terkait perubahan ini dan mempelajari lebih lanjut
kemampuan barunya. Baca postingannya.
Chrome 92: dukungan pekerja layanan modul
Chrome kini mendukung modul JavaScript di pekerja layanan. Untuk menentukan modul di modul manifes:
"background": {
"service_worker": "script.js",
"type": "module"
}
Tindakan ini akan memuat skrip worker sebagai modul ES, yang memungkinkan Anda menggunakan kata kunci import
di
skrip worker untuk mengimpor modul lain.
Chrome 91: chrome.action.getUserSettings()
Yang baru
chrome.action.getUserSettings()
memungkinkan ekstensi menentukan apakah pengguna telah menyematkan ekstensi ke toolbar utama.
Chrome 90: chrome.scripting.removeCSS()
chrome.scripting.removeCSS()
baru
memungkinkan ekstensi untuk menghapus CSS yang sebelumnya disisipkan melalui
chrome.scripting.insertCSS()
. Ini
menggantikan chrome.tabs.removeCSS()
.
Chrome 90: menampilkan promise dari scripting.executeScript()
chrome.scripting.executeScript()
sekarang
mendukung ditampilkannya promise. Jika nilai eksekusi skrip yang dihasilkan adalah promise, Chrome
akan menunggu promise selesai dan mengembalikan nilai yang dihasilkan.
Chrome 90: Hasil chrome.scripting.executeScript() mencakup frameId
Hasil ditampilkan dari
chrome.scripting.executeScript()
sekarang sertakan frameId.
Properti frameId
menunjukkan frame asal hasil, sehingga ekstensi dapat dengan mudah
mengaitkan hasil dengan tiap-tiap {i>frame<i} saat memasukkan dalam beberapa {i>frame<i}.
Chrome 89: API baru untuk mengelola grup tab
chrome.tabGroups
API baru dan kemampuan baru di
chrome.tabs
mengizinkan ekstensi membaca dan memanipulasi grup tab.
Memerlukan Manifes V3.
Chrome 89: izin yang dapat disesuaikan untuk resource yang dapat diakses dari web
Definisi Resource yang dapat diakses dari web di Manifes V3 telah diubah untuk memungkinkan ekstensi membatasi akses resource berdasarkan asal pemohon atau ID ekstensi.
Postingan blog: Pengonversi Manifes Ekstensi
Tim Ekstensi Chrome memiliki "Pengonversi Manifes Ekstensi" {i>open source<i}, alat Python yang mengotomatiskan beberapa aspek mekanis dalam mengonversi ekstensi ke Manifes V3. Lihat postingan blog pengumuman dan dapatkan dari GitHub.
Chrome 88: Ketersediaan umum Manifes V3
Manifest V3 adalah update besar untuk platform ekstensi; lihat Ringkasan Manifes V3 untuk mengetahui ringkasan fitur baru dan yang diubah. Ekstensi dapat terus menggunakan Manifes V2 untuk saat ini, tetapi fitur ini akan dihentikan dalam waktu dekat. Kami sangat sebaiknya gunakan Manifes V3 untuk ekstensi baru apa pun, dan mulai migrasikan ekstensi yang sudah ada ke Manifest V3 sesegera mungkin.