Panduan untuk mengonversi ekstensi Manifes V2 menjadi ekstensi Manifes V3.
Bagian ini membantu Anda mengupgrade ekstensi dari Manifest V2 ke Manifest V3, versi terbaru platform Ekstensi Chrome. Pekerjaan migrasi secara umum dibagi menjadi kategori berikut. Untuk membantu Anda melacak pekerjaan, kami telah menyediakan checklist yang merangkum isi dokumen ini. Anda dapat mengakses konten menggunakan checklist, atau mempelajari konten. Kedua jalur tersebut diakhiri dengan ekstensi yang diupgrade.
- Memperbarui manifes—
manifest.jsonharus khusus untuk V3. Perubahan yang dapat dilakukan sendiri dijelaskan di bagian ini. Perubahan manifes terkait kode dijelaskan dengan perubahan kode yang didukungnya. - Bermigrasi ke service worker—Service worker menggantikan halaman latar belakang atau peristiwa ekstensi untuk memastikan kode latar belakang tetap berada di luar thread utama yang dapat merusak performa. Perubahan ini juga memerlukan pemindahan DOM, jendela, dan panggilan API ekstensi tertentu ke dalam dokumen di luar layar.
- Panggilan Update API—Beberapa panggilan API perlu diganti dengan panggilan yang lebih modern.
- Mengganti pemroses permintaan web yang memblokir—Memblokir atau mengubah permintaan jaringan di Manifest V2 dapat menurunkan performa secara signifikan dan memerlukan akses berlebihan ke data pengguna yang sensitif. Declarative Net Request API memungkinkan ekstensi memblokir atau mengubah konten web dengan lebih sedikit izin dan tanpa menghambat performa.
- Meningkatkan keamanan ekstensi—Manifest V3 meningkatkan keamanan ekstensi dalam beberapa cara. Selain kebijakan keamanan konten yang ditingkatkan, dukungan untuk kode yang dihosting dari jarak jauh dan eksekusi string arbitrer dihapus.
- Publikasikan ekstensi Anda—Bagian ini menjelaskan cara merilis ekstensi Manifes V3 Anda secara bertahap untuk memastikan ekstensi berfungsi seperti yang diharapkan dengan mengujinya terlebih dahulu pada audiens terbatas.
Kami juga memiliki Pengonversi Manifes Ekstensi. Fitur ini tidak melakukan semuanya untuk Anda, tetapi akan membantu Anda memulai. README konverter menjelaskan perubahan yang dilakukan alat.
Mempertahankan set fitur saat ini
Untuk mengurangi kemungkinan masalah atau bug yang tidak terduga, sebaiknya jangan menambahkan fungsi baru saat melakukan migrasi. Misalnya, menambahkan fitur yang memerlukan izin baru dapat memicu peringatan izin, yang akan menonaktifkan ekstensi Anda hingga pengguna menyetujui izin baru. Lihat Praktik terbaik peringatan izin untuk mempelajari cara lain menambahkan izin tanpa menampilkan peringatan.
Manifest V3 didukung secara umum di Chrome 88 atau yang lebih baru. Saat mengupdate panggilan API, Anda mungkin mendapati bahwa fitur pengganti belum tersedia di Chrome hingga setelah versi 88. Halaman referensi API berisi informasi dukungan untuk setiap anggota API. Jika Anda menemukan bahwa Anda memerlukan salah satu fitur ini, Anda dapat menentukan versi minimum Chrome dalam file manifes.
Fitur platform ekstensi baru
Sejak rilis Manifest V3, kami terus menambahkan fitur baru, yang sebagian besar dapat digunakan di Manifest V2 dan Manifest V3. Anda tidak diwajibkan untuk menggunakannya saat mengonversi; namun, saat menggantikan fitur lama, Anda sebaiknya menggunakan fitur baru tersebut daripada fitur yang digantikannya dan mengharapkan bahwa fitur yang digantikan pada akhirnya akan dihentikan dan dihapus.