Yang baru di Chrome 120 untuk Ekstensi

Chrome 120 kini tersedia dalam versi beta dan menyertakan banyak update menarik untuk developer Ekstensi Chrome.

Ini merupakan tahun yang sibuk bagi tim Ekstensi Chrome. Dengan rilis Beta Chrome 120 kemarin, platform ekstensi membuat langkah besar lainnya. Untuk ringkasan tentang apa yang terjadi tahun ini, lihat info terbaru tiga bulanan kami dari Juli dan Oktober. Baca terus untuk mengetahui hal-hal baru di Chrome 120 untuk Ekstensi.

Menutup kesenjangan platform

Dengan dirilisnya Chrome 120, kami akan menutup kesenjangan platform yang tersisa yang tercantum di halaman masalah umum Manifes V3. UserScript API yang baru serta dukungan untuk penanganan file di ChromeOS telah menjadi dua item tersisa dalam daftar yang sekarang dapat kami silangkan. Bersama dengan perubahan yang dijelaskan dalam update kuartal sebelumnya, kami sangat senang dengan kondisi platform Ekstensi Chrome saat ini dan hal-hal yang telah kami capai selama setahun terakhir.

API userScripts baru

Dukungan skrip pengguna telah tersedia. Skrip pengguna adalah cuplikan kode (biasanya relatif kecil) yang dapat dimasukkan ekstensi ke halaman web untuk memodifikasi tampilan atau perilaku halaman. Skrip ini dapat dibuat langsung oleh pengguna atau ditemukan di sejumlah repositori skrip pengguna yang berbeda di seluruh web. Mulai dari ekstensi Manifes V3 Chrome 120 kini dapat mengelola kumpulan skrip pengguna serta menentukan waktu dan cara memasukkannya ke halaman web.

Ada satu perbedaan signifikan antara dukungan skrip pengguna di Manifes V2 dan Manifes V3. Karena skrip pengguna sangat hebat dan membutuhkan kepercayaan tinggi pada penulis skrip pengguna, tim Chrome memutuskan bahwa pengguna harus memilih dalam Mode developer sebelum dapat menjalankan skrip pengguna.

Halaman ekstensi
Halaman ekstensi (chrome://extensions)

Contoh userScript baru kami menunjukkan pendekatan sederhana untuk mendeteksi apakah mode Developer diaktifkan dan memberikan alur orientasi yang sederhana.

Contoh alur orientasi untuk skrip pengguna.
Aktivasi pengguna saat mode Developer dinonaktifkan.

Untuk memulai, lihat dokumentasi atau lihat contoh resmi.

Batas kumpulan aturan DNR statis yang lebih tinggi

Kami secara signifikan meningkatkan batas pada kumpulan aturan statis yang diaktifkan dari 10 menjadi 50. Selain itu, kami meningkatkan jumlah total kumpulan aturan statis yang diizinkan dari 50 menjadi 100. Ini merupakan respons atas masukan yang kami terima di Grup Komunitas Ekstensi Web.

ReadList API baru

Chrome memperkenalkan daftar bacaan pada tahun 2021. Tahun lalu, tim Chrome mempermudah akses ke daftar bacaan melalui panel samping. Dengan Chrome 120, kami menambahkan kemampuan Ekstensi Chrome untuk membuat, membaca, memperbarui, dan menghapus entri daftar bacaan. Untuk mempelajari lebih lanjut, lihat dokumen API dan contoh baru kami.

Daftar bacaan Chrome menampilkan halaman dokumen ekstensi.
Panel samping daftar bacaan di Chrome.

Penanganan file di ChromeOS

Penanganan file memungkinkan ekstensi membuka file dengan jenis MIME dan ekstensi file yang ditetapkan dengan cara yang sama seperti penanganan file platform web. Lihat Penanganan file di ChromeOS untuk mengetahui cara menggunakannya lebih lanjut.

Screenshot file yang terbuka dengan dialog ekstensi di ChromeOS
Buka file dalam ekstensi di ChromeOS.

Memicu alarm dalam 30 detik

Ini merupakan update kecil, tetapi akan mengatasi kesenjangan penting dalam siklus proses pekerja layanan. Karena sifat pekerja layanan berbasis peristiwa, cara yang direkomendasikan untuk mengaktifkan peristiwa pada masa mendatang adalah dengan menggunakan chrome.alarms. Alarms API memastikan bahwa kejadian akan diaktifkan meskipun pekerja layanan dimatikan pada saat yang sama.

Tapi tetap ada syaratnya. Sebelum Chrome 120, rentang waktu tersingkat untuk memicu alarm adalah satu menit. Namun, pekerja layanan mati setelah 30 detik tidak aktif. Jadi, tidak ada cara mudah untuk menjadwalkan alarm yang akan dipicu dalam 45 detik, karena saat menggunakan setTimeout() untuk menyetel peristiwa dalam 45 detik, pekerja layanan berpotensi dimatikan sebelum peristiwa diaktifkan.

Mulai Chrome 120, Anda kini dapat mengaktifkan peristiwa di:

  • kurang dari 30 detik menggunakan setTimeout().
  • apa pun yang lebih lama dari atau sama dengan 30 detik menggunakan chrome.alarms:
await chrome.alarms.create('demo-default-alarm', {
   periodInMinutes: 0.45
 });

Ringkasan

Kami sangat senang dengan progres yang dibuat oleh platform ekstensi selama setahun terakhir. Chrome 120 adalah langkah besar lainnya dengan meningkatnya batas DNR dan dukungan skrip pengguna.