Im Juli haben wir eine neue Blogreihe veröffentlicht, um Sie über die Entwicklung von Erweiterungen auf dem Laufenden zu halten. Dank Ihres wertvollen Feedbacks und der kontinuierlichen Zusammenarbeit mit anderen Browseranbietern in der WebExtensions Community Group können wir Erweiterungs-APIs weiter verbessern und auf mehr Konsistenz in den Browsern hinarbeiten.
Willkommen bei der Oktoberausgabe! In diesem Beitrag werfen wir einen Blick auf einige der Änderungen, die das Team für Chrome-Erweiterungen in den letzten Monaten vorgenommen hat, sowie einige neue Funktionen, die im Laufe des Jahres veröffentlicht werden. Los gehts!
Neue Erweiterungs-APIs und -Funktionen
In diesem Abschnitt stellen wir wichtige API-Einführungen vor, stellen kurz weitere API-Verbesserungen vor und informieren Sie über kommende Releases. Alle Neuerungen sind derzeit im aktuellen Betarelease verfügbar. Weitere Informationen finden Sie im Veröffentlichungszeitplan für Chromium.
Highlights
Bekannte Probleme behoben
Das Erweiterungsteam arbeitet aktiv daran, Manifest V3-Stabilitätsprobleme zu beheben. In Chrome 116 wurden viele Verbesserungen veröffentlicht, die uns geholfen haben, die Funktionslücke zwischen Manifest V2 und V3 zu schließen. In Chrome 120 haben wir alle priorisierten Plattformlücken behoben und alle kritischen Fehler behoben, die auf der Seite mit bekannten Problemen dokumentiert sind. Alle Funktionen sind derzeit in Chrome 120 Canary verfügbar, mit Ausnahme der Unterstützung von fileHandler für ChromeOS Lacros und der userScripts API, die im Laufe des Monats eingeführt wird. Weitere Informationen finden Sie auf der aktualisierten Seite zu bekannten Problemen.
Verbesserte Service Worker-Stabilität
Stabilitätsprobleme mit Service Workern wurden behoben. In Chrome 116 haben wir Erweiterungs-APIs, die eine Eingabeaufforderung anzeigen, starke Keep-Alives hinzugefügt und die Unterstützung für WebSockets verbessert. Weitere Informationen dazu finden Sie im Tutorial WebSockets in Erweiterungen verwenden. Ab Chrome 118 bleibt ein Service Worker während einer aktiven Debugger API-Sitzung aktiv.
Weitere Informationen finden Sie in unserem aktualisierten Service Worker-Leitfaden. Wenn bei Ihren Nutzern nach Version 119 weiterhin Service Worker-bezogene Stabilitätsprobleme in Chrome-Versionen auftreten, teilen Sie uns dies bitte mit.
Erhöhte Sicherheit
Bisher wurde beim Aufrufen einiger chrome://
-URLs mit tabs.update()
, tabs.create
und windows.create()
ein Fehler ausgegeben oder Chrome zum Absturz gebracht. Außerdem konnte tabs.update()
keine JavaScript-URL öffnen. In Chrome 117 wurde die Anzahl der unterstützten chrome://
-URLs erweitert. Die Blockierung von JavaScript-URLs gilt jetzt auch für alle Erweiterungs-API-Methoden.
In Chrome 117 erhalten Nutzer proaktive Benachrichtigungen auf der Seite für Chrome-Erweiterungen, wenn eine von ihnen installierte Erweiterung nicht mehr im Chrome Web Store verfügbar ist. Das kann passieren, wenn der Entwickler die Veröffentlichung der Erweiterung aufhebt, sie aufgrund von Richtlinienverstößen entfernt oder als Malware identifiziert wird. Weitere Informationen finden Sie unter Sicherheitscheck auf der Seite „chrome://extensions“.
In Chrome 118 dürfen Erweiterungen nur dann file://
-URLs über die chrome.tabs
und chrome.windows
APIs aufrufen, wenn auf der Detailseite der Erweiterung die Option „Zugriff auf Datei-URLs zulassen“ aktiviert ist. Weitere Informationen finden Sie im WECG-Diskussionsforum.
Weitere API-Einführungen
- Runtime API:Ab Chrome 116 können Sie mit
runtime.getContexts()
Informationen zu aktiven Kontexten abrufen. So können Sie beispielsweise prüfen, ob ein aktives, nicht sichtbares Dokument vorhanden ist. - Side Panel API: In Chrome 116 können Sie mit
sidepanel.open()
die Seitenleiste der Erweiterung programmatisch öffnen, wenn sie auf eine Nutzergeste wie das Klicken auf das Kontextmenü reagiert. - TabCapture API: In Chrome 116 wurde die Möglichkeit hinzugefügt,
getMediaStreamId()
über den Erweiterungs-Service-Worker aufzurufen und einMediaStream
-Objekt aus einer Stream-ID in einem nicht sichtbaren Dokument abzurufen. Beispiele finden Sie unter Audioaufnahme und Bildschirmaufnahme. - DeclarativeNetRequest API:Der Standardwert für das Attribut
isUrlFilterCaseSensitive
wurde in Chrome 118 zufalse
geändert.
Demnächst verfügbar...
Wir planen, mit der Einführung von Chrome 120 alle verbleibenden Probleme auf der Seite mit bekannten Problemen zu beheben. Wir planen außerdem, die folgenden Funktionen hinzuzufügen:
- Mit der UserScripts API können Nutzerskriptmanager koordinieren, wie und wann eine Sammlung von Nutzerskripts auf Webseiten eingeschleust werden soll. Weitere Informationen finden Sie im Vorschlag für das Programm „WECG“.
- Mit der ReadingList API können Entwickler Metadaten im Bereich „Leseliste“ der Seitenleiste erstellen, lesen, aktualisieren und löschen. Weitere Informationen zu dieser Ankündigung finden Sie im Hilfeartikel Das ist neu bei Chrome-Erweiterungen.
- Aufgrund des Feedbacks aus der Community-Gruppe für Weberweiterungen erhöhen wir das Limit für aktivierte statische Regelsätze erheblich von 10 auf 50. Außerdem erhöhen wir die Gesamtzahl der zulässigen statischen Regelsätze von 50 auf 100. Diese Funktion ist derzeit auf Canary verfügbar.
- Die File Handling API ist ab ChromeOS 120 für ChromeOS-Erweiterungen verfügbar. Damit können mithilfe von Erweiterungen Dateien mit bestimmten MIME-Typen und Dateiendungen auf ähnliche Weise wie bei Webplattform-Dateien geöffnet werden.
- Erweiterungen können die Push API im Web über
self.registration.pushManager.subscribe()
verwenden, ohne dass eine für den Nutzer sichtbare Benachrichtigung angezeigt wird. Dazu setzen SieuserVisibleOnly
auffalse
. Dadurch werden Push-Benachrichtigungen für die asynchrone Client-Server-Kommunikation eine nahtlosere Alternative zu WebSockets in Service Workern (MV3). Weitere Informationen finden Sie unter Chromium-Fehler und WECG-Diskussion.
Sobald diese Funktionen in Chrome Beta verfügbar sind, halten wir Sie auf der Seite Neuerungen bei Erweiterungen auf dem Laufenden.
Upgrades der Dokumentation
Wir haben auch unsere Dokumentation verbessert und erweitert. Stellen Sie bitte weiterhin Fragen zur chromium-group und melden Sie Dokumentationsprobleme.
Highlights
- Wir haben die Landingpage für Beispiele überarbeitet. Sie können jetzt nach API, Berechtigung und Typ filtern, um bestimmte Beispiele leichter zu finden. Diese Verbesserung war eine gemeinsame Initiative mit unserem Summer of Code-Praktikant Xuezhou Dai. In diesem Blogpost können Sie mehr über seine Erfahrungen nachlesen.
- Unter Google Analytics-Konto mit dem Chrome Web Store verwenden wird beschrieben, wie Sie Google Analytics 4 für Ihren Chrome Web Store-Eintrag aufrufen können, um die vom Entwickler-Dashboard bereitgestellten Daten zu ergänzen. In diesem Leitfaden erfahren Sie, wie Sie Google Analytics aktivieren, die Anzeigenleistung beobachten, Conversions erfassen und anderen Konten Zugriff auf Google Analytics-Daten gewähren.
- Wir haben einen neuen Leitfaden zur Funktionsweise von Cookies und Web Storage APIs in Chrome-Erweiterungen veröffentlicht. Sie enthält alles, was Sie über die Privacy Sandbox für Entwickler von Erweiterungen wissen müssen.
- Wir haben neue Artikel zur Integration von Tests in Ihren Erweiterungsprojekten veröffentlicht: Einheitentests für Chrome-Erweiterungen und End-to-End-Tests für Erweiterungen enthalten allgemeine Anleitungen und Best Practices für eine Reihe gängiger Frameworks. Eine praktische Anleitung finden Sie unter Chrome-Erweiterungen mit Puppeteer testen.
Weitere Neuigkeiten
- Wir haben die Anleitung zur Declarative Net Request API so umformuliert, dass sie ein klareres Bild der Implementierung deklarativer Regelsätze bietet.
- Wir haben weitere Anleitungen zur Migration von remote gehostetem Code zu Manifest V3 hinzugefügt. Außerdem bieten wir Strategien zur Veröffentlichung Ihrer Manifest V3-Erweiterung, um das Risiko von Problemen während der Veröffentlichung zu minimieren.
- Verbindung zu einem WebSocket im Service Worker Ihrer Erweiterung herstellen
- Wir haben unsere Anleitung zum Aufrufen der Hilfe erweitert. Sie enthält jetzt detailliertere Anleitungen zum Melden von Fehlern, Nachverfolgen bestehender Probleme, Anfordern neuer Funktionen und mehr.
Demnächst verfügbar...
- User Scripts API-Referenz und -Tutorial
- Firebase-Anleitung und -Beispiele
- ReadingList API-Referenz.
Der Chrome Web Store neu gestalten ꛭ
Wie bereits auf der Google I/O angedeutet, haben wir Anfang des Monats eine erste Vorschau auf den überarbeiteten Chrome Web Store angekündigt. Überzeugen Sie sich selbst: https://chromewebstore.google.com/. Einige wichtige Änderungen sind:
- Die Liste der Kategorien wurde von einer Liste mit elf auf eine neue Liste mit 17 in drei Kategoriegruppen erhöht.
- Die automatische Vervollständigung in der Suche wurde verbessert.
- Screenshots werden jetzt in deutlich höherer Qualität angezeigt. Falls noch nicht geschehen, können Sie Screenshots der Größe 1280 x 800 hochladen.
- Bei Antworten auf Fragen auf dem Tab „Support“ werden jetzt Zeilenumbrüche angezeigt.
- Wenn Sie auf Rezensionen von Nutzern und Supportfragen antworten, wird in Ihrer Antwort jetzt das Logo „Entwickler“ neben Ihrem Namen angezeigt.
- Sie können Nutzern einen direkten Link zur Seite mit Rezensionen bereitstellen, indem Sie „/reviews“ am Ende der URL Ihres Store-Artikels einfügen, z. B.
https://chromewebstore.google.com/detail/_EXTENSION_ID_/reviews
.
Vielen Dank für den bisherigen Beitrag zur Gruppe „chromium-google“. Sie können sich gerne an der Diskussion beteiligen oder Ihr Feedback über den Menüpunkt Feedback geben direkt an das CWS-Team senden:
Außerdem haben Sie die Möglichkeit, ein Formular zur Selbstnominierung einzureichen, damit wir es in die Sammlung der Redaktionsempfehlungen aufnehmen können. Auch das Entwickler-Dashboard wird demnächst verbessert.
💡 Schon gewusst?
- Es gibt ein neues Video zum Thema Fehlerbehebung in Chrome-Erweiterungen. Darin werden viele Themen behandelt, mit denen Sie vielleicht schon vertraut sind, sowie ein paar praktische Tricks für die Verwendung von Entwicklertools in Erweiterungen.
- Ab sofort müssen Sie für jede Erweiterung eine Datenschutzerklärung angeben. Bisher konnten Sie nur eine Datenschutzerklärung pro Entwicklerkonto hinzufügen. Es war jedoch umständlich, wenn Sie mehrere Erweiterungen in einem Entwicklerkonto hatten. Sie finden die neue Oberfläche im Entwickler-Dashboard auf dem Tab „Datenschutz“ für Ihren Artikel. Das bedeutet, dass Datenschutzerklärungen auf Kontoebene nicht mehr unterstützt werden.
Kontakt 🙌
Wir haben uns weiterhin in Einzelgesprächen mit der Entwickler-Community für Erweiterungen in Verbindung gesetzt, neue Programme eingeführt und an Konferenzen teilgenommen. Hier einige Highlights:
- Das Google Developers-Expertenprogramm wurde im August eingeführt. Über ein Dutzend neue GDEs mit Schwerpunkt auf Chrome-Erweiterungen aus der ganzen Welt geben uns wertvolles Feedback. Es ist eine sehr aufregende Zeit für das Programm!
- Wir haben als Teil der Web Extensions Community Group an der TPAC-Konferenz teilgenommen und uns mit Vertretern von Firefox und Safari sowie mehreren Community-Mitgliedern getroffen. Wir haben in mehreren Bereichen erhebliche Fortschritte erzielt, darunter die Umstellung auf konsistentere Erweiterungs-APIs, die Arbeit an einer Spezifikation und die Entwicklung einer neuen Testsuite auf der Grundlage von Webplattform-Tests. Die vollständigen Minuten finden Sie im WECG-Repository.
- Letzte Woche nahm das Erweiterungsteam am Ad-Filtering Dev Summit in Amsterdam teil. Sie haben mehrere von Ihnen bei einer Kaffeepause getroffen, die sie vor der Summit-Woche veranstalteten, und bei den Öffnungszeiten am Freitag.
Auch wenn Sie an keiner dieser Veranstaltungen teilnehmen konnten, können Sie sich weiter beteiligen. Stellen Sie dazu Fragen in der Google-Gruppe chromium-extensions, folgen Sie den Diskussionen mit Browserpartnern zur WECG und melden Sie eventuelle Dokumentationsprobleme.
Nochmals vielen Dank, dass Sie Teil der Community für Entwickler von Erweiterungen sind.