Chrome w wersji 120 jest już dostępna w wersji beta i zawiera wiele ekscytujących nowości dla deweloperów rozszerzeń do Chrome.
Zespół rozszerzeń do Chrome miał bardzo pracowity rok. Wczorajsze wydanie Chrome 120 w wersji beta to kolejny duży krok naprzód w przypadku platformy rozszerzeń. Informacje o tym, co działo się w tym roku, znajdziesz w naszych kwartalnych raportach z lipca i października. Czytaj dalej, aby dowiedzieć się, co nowego w Chrome 120 w przypadku rozszerzeń.
Wypełnianie luki w przypadku platform
Wraz z wydaniem Chrome 120 zamkniemy pozostałe luki w funkcjonalności na platformach wymienionych na stronie znanych problemów z Manifestem V3. Nowy interfejs userScript API oraz obsługa obsługi plików w ChromeOS to 2 pozostałe pozycje na liście, które możemy teraz odhaczyć. Wraz ze zmianami opisanymi w poprzedniej aktualizacji kwartalnej jesteśmy bardzo zadowoleni z obecnego stanu platformy rozszerzeń Chrome i z tego, co udało nam się osiągnąć w ciągu ostatniego roku.
Nowy interfejs userScripts API
Dodaliśmy obsługę skryptów użytkownika. Skrypty użytkownika to (zwykle stosunkowo małe) fragmenty kodu, które rozszerzenia mogą wstrzykiwać do stron internetowych, aby zmodyfikować ich wygląd lub zachowanie. Mogą być tworzone bezpośrednio przez użytkownika lub znajdowane w różnych repozytoriach skryptów w internecie. Od wersji 120 Chrome rozszerzenia platformy Manifest V3 mogą zarządzać kolekcją skryptów użytkownika i określać, kiedy i jak mają być one wstawiane na stronach internetowych.
Istnieje jedna istotna różnica między obsługą skryptów użytkownika w Manifest V2 i Manifest V3. Skrypty użytkownika są potężne i wymagają dużego zaufania do autora, dlatego zespół Chrome zdecydował, że użytkownicy muszą włączyć tryb programisty, zanim będą mogli uruchomić skrypt użytkownika.
Nasz nowy przykładowy skrypt userScript demonstruje proste podejście do wykrywania, czy tryb programisty jest włączony, oraz prezentuje prosty proces wdrażania.
Aby rozpocząć, zapoznaj się z dokumentacją lub oficjalnym przykładem.
Wyższe limity statycznych reguł DNR
Zwiększyliśmy limit włączonych statycznych zestawów reguł z 10 do 50. Dodatkowo zwiększyliśmy łączną liczbę dozwolonych statycznych zestawów reguł z 50 do 100. To odpowiedź na opinie otrzymane w ramach grupy dotyczącej rozszerzeń internetowych.
Nowy interfejs ReadingList API
Lista Do przeczytania została wprowadzona w Chrome w 2021 r. W zeszłym roku zespół Chrome ułatwił dostęp do listy Do przeczytania, dodając ją do panelu bocznego. W wersji 120 Chrome dodajemy możliwość tworzenia, odczytywania, aktualizowania i usuwania wpisów na liście Do przeczytania w rozszerzeniach Chrome. Aby dowiedzieć się więcej, zapoznaj się z dokumentacją interfejsu API i naszą nową próbką.
Obsługa plików w ChromeOS
Obsługa plików umożliwia rozszerzeniom otwieranie plików o określonych typach MIME i rozszerzeniach w sposób podobny do obsługi plików na platformach internetowych. Więcej informacji o tym, jak korzystać z tej funkcji, znajdziesz w artykule Zarządzanie plikami w ChromeOS.
Wywołanie alarmu w ciągu 30 sekund
To niewielka aktualizacja, ale rozwiązuje ważną lukę w cyklu życia usługi. Ze względu na charakter skryptów service worker, zalecany sposób wywołania zdarzenia w przyszłości to użycie funkcji chrome.alarms
. Interfejs Alarms API zapewnia, że zdarzenie zostanie wywołane nawet wtedy, gdy skrypt usługi zostanie w międzyczasie zamknięty.
Jest jednak pewien haczyk. W wersji Chrome 120 najkrótszy czas do uruchomienia alarmu wynosił 1 minutę. Jednak procesy robocze usługi są wyłączane po 30 sekundach braku aktywności. Nie było więc prostego sposobu na zaplanowanie alarmu na 45 sekund, ponieważ przy użyciu funkcji setTimeout()
do ustawienia zdarzenia na 45 sekund usługa workera mogła zostać zamknięta przed uruchomieniem zdarzenia.
Począwszy od wersji 120 Chrome możesz wywołać zdarzenie w ramach:
- trwać krócej niż 30 sekund przy użyciu
setTimeout()
. - wszystko dłuższe niż 30 sekund za pomocą
chrome.alarms
:
await chrome.alarms.create('demo-default-alarm', {
periodInMinutes: 0.45
});
Podsumowanie
Jesteśmy bardzo zadowoleni z postępów, jakie platforma rozszerzeń poczyniła w ciągu ostatniego roku. Chrome 120 to kolejny ważny krok w kierunku zwiększenia limitów DNR i obsługi skryptów użytkownika.