Chrome 120 ist jetzt als Betaversion verfügbar und enthält viele spannende Updates für Entwickler von Chrome-Erweiterungen.
Das Jahr war für das Chrome-Erweiterungen-Team sehr ereignisreich. Mit der gestrigen Veröffentlichung von Chrome 120 Beta macht die Erweiterungsplattform einen weiteren großen Schritt nach vorn. Einen Überblick über die Neuigkeiten dieses Jahres findest du in unseren vierteljährlichen Updates vom Juli und Oktober. Im Folgenden finden Sie Informationen zu den Neuerungen in Chrome 120 für Erweiterungen.
Plattformlücke schließen
Mit der Veröffentlichung von Chrome 120 schließen wir die verbleibenden Plattformlücken, die auf der Seite mit bekannten Problemen bei Manifest V3 aufgeführt sind. Die neue userScript API und die Unterstützung der Dateiverwaltung unter ChromeOS waren die letzten beiden Punkte auf der Liste, die wir jetzt abhaken können. Zusammen mit den im letzten Quartalsbericht beschriebenen Änderungen sind wir sehr zufrieden mit dem aktuellen Stand der Chrome-Erweiterungsplattform und dem, was wir im letzten Jahr erreicht haben.
Neue userScripts API
Unterstützung für Nutzerscripts Nutzerscripts sind (in der Regel relativ kleine) Code-Snippets, die Erweiterungen in Webseiten einschleusen können, um das Aussehen oder Verhalten der Seite zu ändern. Sie können direkt vom Nutzer erstellt oder in einer Reihe verschiedener Nutzerscript-Repositories im Web gefunden werden. Ab Chrome 120 können Manifest V3-Erweiterungen die Erfassung von Nutzerscripts verwalten und festlegen, wann und wie sie in Webseiten eingefügt werden.
Es gibt einen wesentlichen Unterschied zwischen der Unterstützung von Nutzerscripts in Manifest V2 und Manifest V3. Da Nutzerscripts leistungsstark sind und ein hohes Maß an Vertrauen in den Autor des Nutzerscripts erfordern, hat das Chrome-Team entschieden, dass Nutzer den Entwicklermodus aktivieren müssen, bevor sie ein Nutzerscript ausführen können.
Unser neues userScript-Beispiel zeigt einen einfachen Ansatz, um zu erkennen, ob der Entwicklermodus aktiviert ist, und einen einfachen Onboarding-Vorgang bereitzustellen.
Weitere Informationen finden Sie in der Dokumentation oder im offiziellen Beispiel.
Höhere Limits für statische DNR-Regeln
Wir haben die Obergrenze für aktivierte statische Regelsätze von 10 auf 50 erhöht. Außerdem haben wir die Gesamtzahl der zulässigen statischen Regelsätze von 50 auf 100 erhöht. Diese Änderung ist eine Reaktion auf Feedback, das wir in der Community-Gruppe für Web-Erweiterungen erhalten haben.
Neue ReadingList API
Die Leseliste wurde 2021 in Chrome eingeführt. Letztes Jahr hat das Chrome-Team den Zugriff auf die Leseliste über die Seitenleiste noch einfacher gemacht. Mit Chrome 120 können Chrome-Erweiterungen Leselisteinträge erstellen, lesen, aktualisieren und löschen. Weitere Informationen finden Sie in der API-Dokumentation und in unserem neuen Beispiel.
Dateiverwaltung unter ChromeOS
Mit der Dateiverwaltung können Erweiterungen Dateien mit bestimmten MIME-Typen und Dateiendungen ähnlich wie bei der Dateiverwaltung der Webplattform öffnen. Weitere Informationen zur Verwendung finden Sie unter Dateiverwaltung unter ChromeOS.
In 30 Sekunden einen Wecker stellen
Das ist ein kleines Update, das aber eine wichtige Lücke im Service Worker-Lebenszyklus schließt. Aufgrund der ereignisorientierten Natur von Dienstprogrammen wird empfohlen, in Zukunft chrome.alarms
zu verwenden, um ein Ereignis auszulösen. Die Alarms API sorgt dafür, dass das Ereignis ausgelöst wird, auch wenn der Dienst-Worker in der Zwischenzeit heruntergefahren wird.
Es gibt aber einen Haken. Vor Chrome 120 war eine Minute die kürzeste Zeitspanne, nach der ein Wecker ausgelöst werden konnte. Service Worker werden jedoch nach 30 Sekunden Inaktivität heruntergefahren. Es gab also keine einfache Möglichkeit, einen Wecker zu planen, der in 45 Sekunden ausgelöst wird. Wenn Sie setTimeout()
verwenden, um ein Ereignis in 45 Sekunden festzulegen, wird der Dienstarbeiter möglicherweise heruntergefahren, bevor das Ereignis ausgelöst wird.
Ab Chrome 120 können Sie ein Ereignis jetzt an folgenden Stellen auslösen:
- weniger als 30 Sekunden mit
setTimeout()
. - Mit
chrome.alarms
können Sie Anzeigen mit einer Dauer von mindestens 30 Sekunden erstellen:
await chrome.alarms.create('demo-default-alarm', {
periodInMinutes: 0.45
});
Zusammenfassung
Wir sind sehr zufrieden mit den Fortschritten, die die Erweiterungsplattform im letzten Jahr gemacht hat. Chrome 120 ist ein weiterer großer Schritt mit höheren DNR-Limits und Unterstützung für Nutzerscripts.