Sehen Sie sich diese Seite regelmäßig an, um über Änderungen an Chrome-Erweiterungen, die Erweiterungsdokumentation oder zugehörige Richtlinien oder andere Änderungen informiert zu bleiben. Weitere Hinweise finden Sie in der Google-Gruppe für Erweiterungen. Im Chrome-Zeitplan sind die Veröffentlichungsdaten für stabile und Betaversionen aufgeführt.
Die Prompt API in Chrome-Erweiterungen
Die Prompt API für Erweiterungen ist jetzt in einem Ursprungstest verfügbar. Sie können damit Chrome-Erweiterungen erstellen, die im Browser Gemini Nano, unser effizientestes Sprachmodell, verwenden.
Nehmen Sie am Ursprungstest der Prompt API teil, der in Chrome 131 bis 136 ausgeführt wird, und geben Sie uns Feedback. Ihre Antworten können sich direkt darauf auswirken, wie wir zukünftige Versionen dieser API und alle integrierten KI-APIs entwickeln und implementieren.
Blogpost: Neuigkeiten zu Chrome-Erweiterungen im Oktober 2024
Es ist wieder Zeit für eine Zusammenfassung der Neuigkeiten zu Chrome-Erweiterungen. Wir haben spannende Updates zur KI-Integration, zu neuen APIs, zu Veranstaltungen und zu Videos. Weitere Informationen finden Sie in der Oktober-Ausgabe von „Neuigkeiten zu Chrome-Erweiterungen“.
An der integrierten KI-Challenge teilnehmen
Chrome hat die Built-in AI Challenge gestartet: Sie sind eingeladen, innovative Web-Anwendungen und Chrome-Erweiterungen mit den integrierten KI-Modellen und APIs von Chrome zu erstellen und Preise im Gesamtwert von 65.000 $zu gewinnen.
Registrieren Sie sich und erhalten Sie weitere Informationen auf der Website der Built-in AI Challenge. Wir sind schon gespannt, was ihr mithilfe von KI im Web erschafft.
Chrome 130: action.onUserSettingsChanged
Ab Chrome 130 ist das Ereignis action.onUserSettingsChanged verfügbar. Dies folgt einem Vorschlag in der WebExtensions-Community-Gruppe. Vielen Dank an Microsoft für den Beitrag zu Chromium.
Chrome 130: StorageArea.getKeys()
Ab Chrome 130 ist die Methode getKeys() in der StorageArea-Schnittstelle verfügbar, die von der chrome.storage
API verwendet wird. Dies folgt einem Vorschlag in der WebExtensions-Community-Gruppe.
Chrome 128: Abgleich von Antwortheadern in deklarativen Netzwerkanfragen
Ab Chrome 128 wird in der Declarative Net Request API die Unterstützung für das Abgleichen von Antwortheadern hinzugefügt. Diese Anforderung wurde häufig gestellt, insbesondere für den Abgleich des Content-Type-Headers. Deshalb haben wir gemeinsam mit der WebExtensions Community Group eine geeignete API entwickelt.
Wir haben unsere API-Referenz um die neuen Felder responseHeaders
und excludedResponseHeaders
ergänzt. Mit diesen können Sie prüfen, ob eine bestimmte Kopfzeile vorhanden ist und welchen Wert sie hat.
Im Rahmen dieser Aktualisierung haben wir unserer Dokumentation einen neuen Abschnitt zur Regelauswertung hinzugefügt, in dem erläutert wird, wie Regeln abgeglichen werden. Insbesondere beim Abgleich von Headern können Regeln erst ausgeführt werden, wenn Antwortheader empfangen wurden. Sie werden also in einem späteren Stadium als andere Regeln angewendet. Das bedeutet, dass die Anfrage den Server erreicht, bevor sie blockiert oder weitergeleitet wird.
Video: Was sind Inhaltsscripts?
Hier erfahren Sie mehr über Content-Scripts in Chrome-Erweiterungen, z. B. wie Sie CSS und JavaScript registrieren, damit sie auf einer bestimmten Seite ausgeführt werden. Sehen Sie sich das vollständige Video an.
Wichtige Richtlinienaktualisierungen
Das Chrome Web Store-Team hat eine Reihe von Aktualisierungen auf der Seite Programmrichtlinien für Entwickler veröffentlicht. Diese sollen die Entwicklung hochwertiger Produkte fördern, irreführendes Verhalten verhindern und eine informierte Einwilligung der Nutzer sicherstellen. Rebecca Soares, die Chrome Web Store-Richtlinienmanagerin, hat alle Änderungen im Blogpost Chrome-Erweiterungen: Wichtige Richtlinienaktualisierungen zusammengefasst.
Blogpost: Neuigkeiten zu Chrome-Erweiterungen im Juli 2024
In den letzten drei Monaten haben wir mehrere wichtige Updates und neue Funktionen eingeführt, darunter die Einstellung von Manifest V2. In der Juli-Ausgabe von „Neuigkeiten zu Chrome-Erweiterungen“ erfahren Sie alles Wissenswerte.
Video: Was ist ein Remote-gehosteter Code?
Patrick vom Chrome-Erweiterungen-Team erklärt das Konzept des extern gehosteten Codes in Chrome-Erweiterungen. Hier erfahren Sie, warum RHC nicht mehr zulässig ist, wie Sie es erkennen und was Sie tun müssen, wenn Ihre Erweiterung aktualisiert werden muss. Sehen Sie sich das vollständige Video an.
Chrome 127: Neue action.openPopup API
Ab Chrome 127 ist die action.openPopup
-API für alle Erweiterungen verfügbar. Bisher war sie nur in Canary oder für Erweiterungen verfügbar, die gemäß einer Richtlinie installiert wurden.
Video: Interview mit dem Trust & Safety-Team
Das DevRel-Team für Chrome-Erweiterungen hat sich mit dem Trust & Safety-Team, das für die Überprüfung im Chrome Web Store verantwortlich ist, zusammengesetzt, um Ihre Fragen zu beantworten. Sehen Sie sich das vollständige Video an.
Blogpost: Manifest V2 wird eingestellt
Ab dem 3. Juni wird Nutzern, die in den Chrome-Beta-, -Entwickler- und -Canary-Kanälen noch Manifest V2-Erweiterungen installiert haben, auf der Seite zur Erweiterungsverwaltung (chrome://extensions) ein Warnbanner angezeigt, in dem sie darüber informiert werden, dass einige ihrer installierten Manifest V2-Erweiterungen bald nicht mehr unterstützt werden. Weitere Informationen
Änderungen an der Benutzeroberfläche der Seitenleiste
Wir haben vor Kurzem einige Änderungen an der Benutzeroberfläche der Seitenleiste vorgenommen. So wurde beispielsweise ein Markierungssymbol hinzugefügt und das Symbol für die globale Seitenleiste entfernt. Weitere Informationen finden Sie in der PSA sowie in unserer aktualisierten Dokumentation und in den Beispielen.
Blogpost: Chrome-Erweiterungen auf der Google I/O 2024
Die Google I/O ist vorbei und wir haben alle spannenden Updates für Erweiterungen zusammengefasst. Auf YouTube findest du das vollständige Video. In unserem Blogpost findest du einige Highlights.
Überprüfung für berechtigte Änderungen an deklarativen Netzwerkanfragen überspringen
Im Chrome Web Store können Sie jetzt die Überprüfung für berechtigte Änderungen überspringen, wenn Sie die Declarative Net Request API verwenden. Weitere Informationen zu den Voraussetzungen und zur Aktivierung finden Sie in der Chrome Web Store-Dokumentation.
„deployPercentage“ in der Chrome Web Store API
Wir haben vor Kurzem unsere Dokumentation zur Chrome Web Store API um Informationen zu deployPercentage
ergänzt. Damit können Sie einen Prozentsatz einer teilweisen Bereitstellung zuweisen. Weitere Informationen zu deployPercentage
Chrome 126: Ursprungstests in Erweiterungen
In Chrome 126 wird das neue Feld „trial_tokens
“ in manifest.json eingeführt. Damit können Sie Origin Trials und Testzeiträume für die Einstellung von Funktionen auf allen Erweiterungsoberflächen aktivieren. Weitere Informationen finden Sie im Leitfaden.
Blogpost: Neuigkeiten zu Chrome-Erweiterungen – April 2024
Wir haben eine neue Ausgabe von Neuigkeiten zu Chrome-Erweiterungen veröffentlicht. Darin wird beschrieben, woran das Erweiterungsteam in den letzten Monaten gearbeitet hat. Dazu gehören: Versionsrückroll im Chrome Web Store, bessere Unterstützung für Firebase Auth sowie weitere API-Einführungen und -Updates.
Versionsrückgänge im Chrome Web Store-Entwickler-Dashboard
Sie können Ihre Erweiterung auf die zuvor veröffentlichte Version im Chrome Web Store zurücksetzen – ohne zusätzliche Überprüfung. Weitere Informationen finden Sie im Blogpost und in der Dokumentation.
Chrome 124: Erweiterte documentScan API
Unter ChromeOS ist jetzt eine erweiterte documentScan
API verfügbar, mit der Bilder von angeschlossenen Dokumentenscannern erkannt und abgerufen werden können.
Chrome 124: WebGPU-Unterstützung in Service Workers
Seit Chrome 124 unterstützen Service Worker WebGPU. Eine Schnellstartanleitung finden Sie im Beispiel für eine WebGPU-Erweiterung.
Chrome 123: Die Events API unterstützt das Filtern nach CIDR-Blöcken
Die Events API unterstützt jetzt die Filterung nach CIDR-Blöcken (Classless Inter-Domain Routing). Ein CIDR-Block ist eine Sammlung von IP-Adressen, die ein Netzwerkpräfix und dieselbe Anzahl von Bits teilen. Bisher musste ein Entwickler, der mehrere IP-Adressen filtern wollte, für jede Adresse im Blockbereich eine Filterregel konfigurieren. Wenn eine Erweiterung jetzt addListener()
aufruft, bedeutet eine übergebene Regel, dass der Ereignis-Handler nur dann aufgerufen wird, wenn der Hostteil einer URL eine IP-Adresse ist und in einem Array angegebene CIDR-Blöcke enthält.
Chrome Web Store: Aktualisierte Anforderungen an die Länge des Erweiterungsnamens
Im Chrome Web Store gilt jetzt für das Feld "name"
einer Erweiterung in manifest.json ein universelles Limit von 75 Zeichen. Bisher war die Zeichenbeschränkung für Englisch 45 Zeichen. In anderen Sprachen gab es keine Beschränkung für das Feld "name"
.
Ursprünglich sollte damit kulturelle und sprachliche Unterschiede berücksichtigt werden, die sich möglicherweise nicht mit derselben Anzahl von Zeichen ausdrücken lassen. Leider wurde diese Funktion von einer kleinen Anzahl von Entwicklern missbraucht, um den Store zu spammen. Deshalb führen wir ein neues universelles Limit ein, das auf 75 Zeichen erhöht wird. Dieses Limit deckt derzeit fast alle Erweiterungen im Store ab. Daher müssen Sie aufgrund dieser Änderung wahrscheinlich nichts unternehmen. Wenn Sie versuchen, eine Erweiterung mit einem Namen hochzuladen, der länger als das maximale Limit ist, wird der Upload vom Store blockiert.
Blog post: eyeo's journey to testing service worker suspension
In diesem Beitrag des Extension Engine-Teams von eyeo wird das Problem beim Testen von Dienst-Workern für Erweiterungen untersucht. Bei Manifest V2 waren Erweiterungen auf einer Hintergrundseite verfügbar, die während des gesamten Lebenszyklus der Erweiterung aktiv war. In Manifest V3 werden stattdessen Dienstprogramme verwendet. Diese sparen Ressourcen, da sie heruntergefahren werden, wenn sie nicht benötigt werden. Das stellt bestimmte Herausforderungen beim Testen dar. In diesem Beitrag wird erläutert, wie eyeo diese Herausforderungen gemeistert hat.
Chrome 123: Wecker werden jetzt auch ausgeführt, wenn das Gerät im Ruhemodus ist
Wecker, die über die chrome.alarms
API festgelegt werden, werden nicht mehr verzögert, wenn ein Gerät in den Ruhemodus wechselt. Wenn das Gerät aktiviert wird, wird der Wecker einmal ausgelöst, unabhängig davon, wie viele Wecker verpasst wurden. Wenn beispielsweise ein Wecker einmal pro Stunde klingeln soll und das Gerät, auf dem er eingestellt ist, von 00:55 Uhr bis 02:05 Uhr inaktiv ist, löst nur der Wecker um 02:00 Uhr das onAlarm
-Ereignis aus.
Die Aktion wird so nah wie möglich an 2:00 Uhr ausgelöst und sofort, wenn ein Gerät aus dem Ruhemodus aufwacht.
Mit dieser Änderung wird Chrome an das in der Web Extensions Community Group vereinbarte Verhalten angepasst.
Blogpost: Änderungen am Verhalten von bfcache mit Erweiterungsnachrichtenports
Der Back-Forward-Cache (bfcache) ist eine Browseroptimierung, die eine sofortige und vorwärtsgerichtete Navigation ermöglicht. Ab Chrome 123 wird der Nachrichtenkanal geschlossen, wenn eine Seite mit einem offenen Erweiterungsport im bfcache gespeichert wird. Das bedeutet, dass keine Nachrichten an diese Seite gesendet werden.
Erweiterungsscripts sollten daher auf Lebenszyklusereignisse wie onDisconnect
warten und eine neue Verbindung herstellen, wenn die Seite aus dem BFCache wiederhergestellt wird.
Weitere Informationen und Beispielcode finden Sie unter Änderungen am BFCache-Verhalten bei Erweiterungsnachrichtenports.
Chrome 122: Unterstützung von Promises in asynchronen Erweiterungs-APIs
Wir haben die Unterstützung von Promises für alle asynchronen Erweiterungs-API-Methoden implementiert. Dies wurde getan, um API-Methoden zu modernisieren, indem die Ergonomie des Umgangs mit asynchronen Vorgängen verbessert wurde. Einige Methoden (z. B. desktopCapture.chooseDesktopMedia()
) unterstützen weiterhin nur Callbacks, da ihre aktuellen Oberflächen nicht mit Promises kompatibel sind. Aus Gründen der Abwärtskompatibilität werden Callbacks weiterhin unterstützt. Wenn Sie einen fehlgeschlagenen Promise finden, melden Sie bitte den Fehler.
Neue Richtlinien für die Echtzeitkommunikation
Wir haben gerade Anleitungen zu Echtzeitoptionen in Erweiterungen veröffentlicht. Echtzeit-Updates bieten einen direkten Kommunikationspfad von Ihren Servern direkt zu Ihren Erweiterungsinstallationen. Außerdem gibt es neue Richtlinien für die Verwendung von chrome.gcm und Web Push.
Neue Anleitung und Beispiel: Beendigung von Dienst-Workern testen
Wir haben gerade einen Leitfaden zum Testen der Beendigung von Dienstarbeitern mit Puppeteer veröffentlicht. Das entsprechende Beispiel zeigt dies anhand von Puppeteer und Selenium.
Beispiel für native Nachrichten aktualisiert
Wir haben gerade ein aktualisiertes Beispiel für native Nachrichten veröffentlicht. Über diese API kann Ihre Erweiterung eine andere Anwendung starten und mit ihr kommunizieren. Vielen Dank an den GitHub-Mitarbeiter Shubham-Rasal für die Arbeit an dieser Funktion.
Chrome 121: Neue Property „lastAccessed“ auf „tabs.Tab“
Dem Objekt tabs.Tab
wurde eine neue Property namens lastAccessed
hinzugefügt. Diese Property gibt an, wann der Tab zuletzt aktiviert wurde. Der zurückgegebene Wert wird in Millisekunden seit der Epoche angegeben.
Chrome 121: Für nicht unterstützte „background“-Schlüssel wird jetzt eine Warnung ausgegeben
Bei der Umstellung von Manifest V2 auf Manifest V3 wurden die Untergeordneten des Manifestschlüssels "background"
geändert, um den Ersatz von Hintergrundscripts durch Dienst-Worker für Erweiterungen zu ermöglichen. Bisher wurde beim Hinzufügen der Manifest V2-Schlüssel "scripts"
, "page"
oder "persistent"
zum Schlüssel "background"
einer Manifest V3-Erweiterung ein Fehler ausgegeben. Das Vorhandensein dieser Schlüssel löst jetzt eine Warnung aus.
Dies soll es ermöglichen, eine einzelne Manifestdatei in Erweiterungen in mehreren Browsern zu verwenden, gemäß einem Vorschlag in der Communitygruppe.
Chrome 120: Mindestgenauigkeit von Weckern auf 30 Sekunden reduziert
Ab Chrome 120 können Manifest V3-Erweiterungen die chrome.alarms
API mit Verzögerungen oder Zeiträumen von 30 Sekunden verwenden, anstatt Werte von mindestens 60 Sekunden anzugeben.
Blogpost: Fortsetzung der Umstellung auf Manifest V3
Der Zeitplan für die Manifest V2-Unterstützung wurde aktualisiert. Weitere Informationen finden Sie in unserem Blogpost vom November 2023.
Blogpost: Verbesserungen bei der Unterstützung der Inhaltsfilterung in Manifest V3
Weitere Informationen zu den Verbesserungen an der declarativeNetRequest API finden Sie in unserem neuen Blogpost.
Blogpost: Das ist neu in Chrome 120 für Erweiterungen
Kürzlich wurde Chrome 120 Beta veröffentlicht. Eine Zusammenfassung der wichtigsten Änderungen für Erweiterungsentwickler finden Sie in unserem neuen Blogpost Das ist neu in Chrome 120 für Erweiterungen. Diese Version ist auch ein wichtiger Meilenstein, da die letzten beiden Elemente (userScripts, Dateihandler unter ChromeOS) aus der Liste der kritischen Plattformlücken entfernt werden.
Wichtige Information: Änderung bei der Verarbeitung von URLs der Datenschutzerklärung im Entwickler-Dashboard
Datenschutzerklärungen werden im Entwickler-Dashboard jetzt auf Artikelebene hinzugefügt. So können Sie für jeden Artikel eine andere Datenschutzerklärung angeben. Weitere Informationen zu dieser Änderung findest du in unserer Warnung.
Video: Ein Chat mit Matt Frisbie
Wir haben gerade ein neues Video auf dem YouTube-Kanal „Chrome for Developers“ veröffentlicht, in dem wir mit dem Google Developer Expert und Autor Matt Frisbie sprechen. Hier ansehen
Neue Hinweise zum Testen von Erweiterungen
Wir haben gerade neue Anleitungen zum Erstellen automatisierter Tests für Erweiterungen veröffentlicht, darunter eine Anleitung zum Erstellen von Unit-Tests sowie allgemeine Hinweise und ein Tutorial zu End-to-End-Tests.
Blogpost: Neuigkeiten zu Chrome-Erweiterungen – Oktober 2023
Wir haben gerade die zweite Ausgabe von Neuigkeiten zu Chrome-Erweiterungen veröffentlicht. In dem Beitrag wird beschrieben, woran das Erweiterungsteam in den letzten Monaten gearbeitet hat, einschließlich der Behebung von Stabilitätsproblemen bei Service Workern und der Schließung aller Lücken bei der MV3-Plattform. Außerdem stellen wir spannende anstehende API-Veröffentlichungen wie die Leseliste API und die User Scripts API vor.
Höhere Limits für statische Regelsätze in der Declarative Net Request API
Aufgrund des Feedbacks in der Communitygruppe für Web-Erweiterungen erhöhen wir die Obergrenze für aktivierte statische Regelsätze 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 in Canary verfügbar.
Verbesserte Informationen zu remote gehostetem Code
Eine Anforderung für Manifest V3 ist, dass Erweiterungen keinen remote gehosteten Code mehr verwenden dürfen. Obwohl dies schon immer Teil unseres Migrationsleitfadens war, haben wir uns dazu entschlossen, die Anleitung zu diesem Thema zu verbessern. Diese Seite enthält jetzt weitere Informationen dazu, was in Manifest V3 noch möglich ist, und Strategien für die Umstellung.
Weitere Informationen finden Sie im Abschnitt Fehlerbehebung bei Verstößen im Chrome Web Store. In einem neuen Abschnitt werden häufige Gründe für die Ablehnung von Erweiterungen mit remote gehostetem Code beschrieben.
Chrome 118: „isUrlFilterCaseSensitive“ ist jetzt standardmäßig auf „false“ (falsch) gesetzt
Ab Chrome 118 ist die Eigenschaft isUrlFilterCaseSensitive
in der chrome.declarativeNetRequest API standardmäßig auf false
festgelegt. Wenn Sie das alte Verhalten beibehalten möchten, können Sie in Ihren declarativeNetRequest-Regeln isUrlFilterCaseSensitive
explizit auf true
festlegen.
Dies folgt auf Diskussionen in der Community-Gruppe für Web-Erweiterungen. Firefox und Safari haben bereits eine ähnliche Änderung implementiert.
Dokumentation zu Cookies und Webspeicher-APIs
Wir haben einen neuen Leitfaden zur Funktionsweise von Cookies und Webspeicher-APIs in Chrome-Erweiterungen veröffentlicht. Darin finden Sie Details zu Änderungen bei der Cookie- und Speicherpartitionierung in der Privacy Sandbox, einem laufenden Projekt zur Einstellung von Drittanbieter-Cookies durch die Erstellung einer Reihe neuer Webplattform-APIs, sowie Details zur Funktionsweise in Erweiterungen.
Erweiterungsbeispiele jetzt durchsuchbar
Vor Kurzem haben wir eine Seite erstellt, auf der Sie nach Beispielen für Chrome-Erweiterungen suchen können. Die Suchseite bietet mehrere Optionen. Über ein Suchfeld können Sie in Beispieltiteln nach Text suchen. Sie können die Suche nach Berechtigung oder Erweiterungs-API einschränken. Mit einem zusätzlichen Filter können Sie die Suche auf API- oder Funktionsbeispiele (Use-Cases) einschränken.
Diese neue Beispielseite wurde von Xuezhou Dai erstellt, einem Teilnehmer des Google Summer of Code, der auch mehrere neue Samples beigesteuert hat. In diesem Blogpost kannst du mehr über ihre Erfahrungen im letzten Sommer erfahren.
Wie bisher können unsere Codebeispiele auf GitHub geklont oder geforkt werden.
Chrome 118: Änderungen beim Öffnen von Dateien: Schema-URLs
Ab Chrome 118 müssen Erweiterungen die Einstellung „Zugriff auf Datei-URLs zulassen“ auf der Seite chrome://extensions
aktivieren, um URLs mit dem Schema „file://“ mithilfe der Tabs- oder Windows-APIs zu öffnen. Sie können programmatisch prüfen, ob dieser Zugriff vorhanden ist, indem Sie chrome.extension.isAllowedFileSchemeAccess()
aufrufen. Firefox schränkt Datei-URLs bereits ein und Safari unterstützt die Änderung. Weitere Informationen finden Sie im Beitrag in der Google-Gruppe für Erweiterungen.
Chrome 117: Erweiterter URL-Schutz bei Navigationen über die Erweiterungs-API
Bisher wurde bei der Navigation, die über Erweiterungs-API-Aufrufe für tabs.update()
, tabs.create()
und windows.create()
ausgelöst wurde, bei einigen chrome://-URLs ein Fehler ausgegeben. Außerdem war der Aufruf von tabs.update()
mit einer JavaScript-URL verboten. In Version 117 wurden diese Schutzmaßnahmen für JavaScript-URLs auf die tabs.create()
-Methode ausgeweitet und der Liste der verbotenen URLs, die für alle oben genannten Methoden gilt, wurden mehrere zusätzliche chrome://-URLs hinzugefügt.
Verbesserte Anleitung für die declarativeNetRequest API
Die chrome.declarativeNetRequest
API blockiert oder ändert Netzwerkanfragen durch Angabe deklarativer Regeln. So können Erweiterungen Netzwerkanfragen ändern, ohne sie abzufangen und ihren Inhalt anzusehen. Das erhöht den Datenschutz für Nutzer. Außerdem ist die Verwendung schwierig. Aus diesem Grund haben wir die Anleitung so umformuliert, dass sie unserer Meinung nach ein klareres Bild davon vermittelt, wie deklarative Regelsätze implementiert werden. Lesen Sie den neuen Abschnitt unter dem oben stehenden Link.
Google Analytics-Konto mit dem Chrome Web Store verwenden
Der Chrome Web Store bietet eine Integration mit Google Analytics. So können Sie neben der im Entwickler-Dashboard verfügbaren Ansicht auch Analysen für Ihren Chrome Web Store-Eintrag aufrufen. Weitere Informationen finden Sie im Hilfeartikel Google Analytics-Konto mit dem Chrome Web Store verwenden.
Chrome 115: In den Entwicklertools werden Inhaltsscripts standardmäßig übersprungen
Eingefügte Inhaltsskripte sind jetzt standardmäßig in der Ignorieren-Liste von DevTools enthalten. Dies hat keine Auswirkungen auf Haltestellen, bedeutet aber, dass Inhaltsscripts beim Debuggen übersprungen und Ausnahmen aus diesen Scripts ignoriert werden. Wenn auf dem Tab Quellen ein Inhaltsskript geöffnet ist, werden Sie durch ein Banner darüber informiert, dass diese Option aktiviert ist. Außerdem haben Sie die Möglichkeit, das Inhaltsskript aus der Liste der ignorierten Elemente zu entfernen. Wenn Sie dieses Verhalten deaktivieren möchten, öffnen Sie die DevTools, gehen Sie zu Einstellungen und dann zu Ignorierliste. Weitere Informationen finden Sie unter Das ist neu in den DevTools.
Chrome 116 Beta: Mehr als hier Platz findet
Chrome 116 ist eine wichtige Version für Erweiterungen. Seitenleisten können jetzt programmatisch geöffnet werden. Mit einer neuen Methode können Sie feststellen, ob ein aktives Dokument außerhalb des Bildschirms geöffnet ist. Service Worker wurden verbessert. In Version 116 gibt es so viele Verbesserungen, dass wir einen Blogpost dazu verfasst haben. Chrome 116 befindet sich seit dem 19. Juli in der Betaphase.
Blogpost: Neuigkeiten zu Chrome-Erweiterungen
Wir haben gerade eine Übersicht über die Änderungen und Verbesserungen an Erweiterungen in diesem Jahr veröffentlicht. Der Beitrag befasst sich mit den wichtigsten neuen Funktionen des Jahres, darunter die Seitenleiste API, Service Worker-Erweiterungen und Offscreen-Dokumente. Außerdem erfährst du, woran wir in diesem Quartal arbeiten. Im Artikel finden Sie viele weitere Informationen mit Links zu allen.
Neue Anleitung und Beispiel: Google Analytics 4 in Ihrer Chrome-Erweiterung verwenden
Wir haben neue Anleitungen und Beispiele zu Google Analytics und Standortermittlung veröffentlicht:
- Eine aktualisierte Version unserer Google Analytics-Anleitung, in der erklärt wird, wie Sie Google Analytics 4 in Ihrer Chrome-Erweiterung verwenden können. Außerdem haben wir unserem GitHub-Beispiel-Repository ein funktionierendes Google Analytics 4-Beispiel hinzugefügt. Unter
google-analytics.js
finden Sie den entsprechenden Code für Google Analytics. - Ein neuer Leitfaden zur Standortbestimmung und drei Beispiele, die zeigen, wie Sie in Service Workers, Inhaltsscripts, Pop-ups und Seitenleisten auf die Standortbestimmung zugreifen.
Chrome 115: Mehrere Gründe in chrome.offscreen.createDocument() angeben
Sie können jetzt beim Aufrufen von chrome.offscreen.createDocument()
mehrere reason
-Enume angeben. Verwenden Sie diese Option, wenn ein nicht sichtbares Dokument für mehrere Zwecke verwendet wird. Der Browser verwendet die angegebenen Gründe, um die Lebensdauer des ausgeblendeten Dokuments zu bestimmen.
Neues Tool: Testtool für Erweiterungsupdates
Wir haben gerade das Tool zum Testen von Erweiterungsupdates veröffentlicht. Es handelt sich dabei um einen lokalen Erweiterungsupdate-Server, mit dem Updates für Chrome-Erweiterungen während der lokalen Entwicklung getestet werden können, einschließlich Berechtigungsgrants. Das Tool zeigt den Aktualisierungsablauf des Nutzers an, einschließlich der Deaktivierung einer Erweiterung, bis ein Nutzer die neu angeforderten Berechtigungen erteilt. Dieses Tool ist besonders nützlich, um die Berechtigungsänderungen zu simulieren, die beim Aktualisieren einer Erweiterung von Manifest V2 auf Manifest V3 angefordert werden.
Chrome 114: Neue Seitenleisten-API
Wir stellen die neue Seitenleiste API vor, eine Oberfläche, über die Nutzer neben den Inhalten, die sie gerade ansehen, auf Tools zugreifen können. Weitere Informationen finden Sie in der Referenz für die Seitenleiste API. Außerdem haben wir unserem GitHub-Beispiel-Repository viele Seitenleistenbeispiele hinzugefügt. Weitere Informationen zu Seitenleisten finden Sie im neuen Blogpost Designing a Superior User Experience with the New Side Panel API (Eine bessere Nutzererfahrung mit der neuen Seitenleisten-API). Auch unsere Richtlinien zu Qualitätsrichtlinien und Best Practices wurden überarbeitet, um weitere Informationen zum Erstellen hochwertiger Seitenleistenerweiterungen bereitzustellen.
Ihr Feedback ist bei der Entwicklung dieser API wichtig. Bitte teilen Sie uns Ihre Ideen und Funktionsanfragen in den chromium-groups mit. Wir arbeiten kontinuierlich daran, die Side Panel API zu verbessern.
Neue Samples: WASM in Erweiterungen
Es gibt zwei neue Beispiele, die zeigen, wie WASM in einer Erweiterung verwendet wird:
- WASM in Manifest V3 verwenden zeigt die allgemeine Methode zum Einfügen eines WASM-Moduls.
- WASM als Modul in Manifest V3 verwenden zeigt, wie es in einem Modul verwendet wird.
Besonderer Dank geht an den GitHub-Mitbearbeiter @daidr für diese Beispiele.
Aktualisierte Anleitung zur Migration zu Manifest V3
Wir haben den Abschnitt Bekannte Probleme in unserer Anleitung zur Migration zu Manifest V3 um eine aktualisierte Liste der Lücken in der Erweiterungsplattform ergänzt, die wir schließen möchten, bevor wir einen neuen Zeitplan für die Einstellung von Manifest V2 bekannt geben.
Audio und Video mit Manifest V3 aufzeichnen
Wir haben gerade einen neuen Artikel mit dem Titel Audioaufnahme und Bildschirmaufzeichnung veröffentlicht. Darin geht es um die Aufnahme von Audio oder Video von einem Tab, Fenster oder Bildschirm in Manifest V3. In diesem Artikel werden mehrere Ansätze zur Aufzeichnung beschrieben, die die chrome.tabCapture
API und die Funktion getDisplayMedia()
umfassen.
Chrome 114: Erhöhtes storage.local-Kontingent
Wir haben das Kontingent für die Property storage.local
auf etwa 10 MB erhöht. Dieser Beschluss wurde in der Community-Gruppe für Web-Erweiterungen gefasst. Dadurch wird storage.local
mit storage.session
übereinstimmend, das in Chrome 112 geändert wurde.
Neue Anleitung und Hilfe zu Erweiterungs-Dienstworkern
Dienstprogramme sind ein wesentlicher Bestandteil von Chrome-Erweiterungen. Wir haben gerade eine Anleitung veröffentlicht, in der die Grundlagen der Registrierung, Fehlerbehebung und Interaktion mit Service Workers erläutert werden. Außerdem haben wir einen neuen Leitfaden zu Service Workers hinzugefügt, in dem wichtige Konzepte ausführlicher erläutert werden. Wir werden diesen Abschnitt in den kommenden Monaten erweitern.
Weitere Tipps zur Fehlerbehebung bei Verstößen im Web Store
Wir haben zwei neue Richtlinien für die Veröffentlichung im Chrome Web Store hinzugefügt. Die Empfehlungen zu Mindestanforderungen an die Funktionalität konzentrieren sich darauf, Nutzern Vorteile zu bieten und ihre Browsererfahrung zu bereichern. Die Richtlinien für Affiliate-Anzeigen sollen Nutzer auf Erweiterungen mit Affiliate-Links oder -Codes zur Monetarisierung aufmerksam machen und ihnen eine gewisse Kontrolle geben, indem vor der Einbindung eine Nutzeraktion erforderlich ist.
Neue Anleitung für den Manifest-Konverter für Erweiterungen
Wir haben die README-Datei für den Manifest-Konverter für Erweiterungen überarbeitet, damit Sie besser nachvollziehen können, was Sie nach dem Ausführen des Tools tun müssen. Mit dem Konverter können Sie Erweiterungen, die auf Manifest V2 basieren, zu Manifest V3 migrieren. In der neuen README-Datei wird die Funktionsweise des Tools mit Wörtern beschrieben, die denen in der Checkliste des Migrationsleitfadens sehr ähnlich sind. Der Konverter kann nicht alles, aber er eliminiert viele Aufgaben, die keine menschliche Entscheidung erfordern.
Chrome 113: Neue Gründe für Dokumente außerhalb des Bildschirms
Wir haben der Offscreen Documents API zwei neue Grundtypen hinzugefügt. Mit LOCAL_STORAGE
können Sie auf die localStorage API der Webplattform zugreifen. Verwenden Sie WORKER
, wenn Sie Web-Worker erstellen.
Google Analytics 4 jetzt im Entwickler-Dashboard
Das Chrome Web Store-Entwickler-Dashboard unterstützt jetzt Google Analytics 4 (GA4). Wir haben die Einrichtung von Google Analytics vereinfacht und die Zugriffsverwaltung für Publisher von Gruppen vereinfacht. Wenn Sie bisher Google Universal Analytics zum Erfassen der Aktivitäten Ihres Store-Eintrags verwendet haben, müssen Sie bis zum 1. Juli 2023 entsprechende Maßnahmen ergreifen, damit Sie weiterhin Daten zu Ihrem Store-Eintrag erhalten. Weitere Informationen finden Sie im Beitrag in der Google-Gruppe für Chromium-Erweiterungen.
Die File Handling API kommt zu ChromeOS
Die File Handler API ist in ChromeOS in Canary für die Versionen 112 und 113 verfügbar. Damit können Erweiterungen unter ChromeOS Dateien mit bestimmten MIME-Typen und Dateiendungen öffnen. Wenn Sie die Dateiverwaltung implementieren möchten, fügen Sie der manifest.json
eine Reihe von Regeln hinzu. Diese Funktion funktioniert genauso wie bei progressiven Web-Apps. Weitere Informationen finden Sie in diesem Artikel.
So aktivieren Sie die Dateiverwaltung:
- Ab Chrome 112 kann Chrome mit dem Flag
--enable-features=ExtensionWebFileHandlers
gestartet werden - Ab Version 113 können Sie
os://flags/#extension-web-file-handlers
in die Chrome-Omnibox einfügen und im Drop-down-Menü die Option „Aktiviert“ auswählen.
Wir hoffen, diese Funktion Ende Juni in Chrome 115 einführen zu können. Weitere Informationen folgen.
Neue Beispiele: dynamische Deklarationen und programmatische Datenübertragung
Wir haben ein neues Beispiel für die chrome.scripting
API erstellt. Es zeigt dynamische Deklarationen, bei denen ein Inhaltsskript zur Laufzeit registriert wird, und programmatische Insertion, bei der ein Script in einem bereits geöffneten Tab ausgeführt wird.
Neue Beispiele: Anwendungsfälle für deklarative Netzwerkanfragen
Es sind drei neue Beispiele verfügbar, die die Declarative Net Request API veranschaulichen. In jedem wird die Implementierung eines einzelnen Anwendungsfalls veranschaulicht. Im ersten wird gezeigt, wie Sie Cookies blockieren. Die beiden verbleibenden Beispiele zeigen, wie URLs blockiert und weitergeleitet werden.
Chrome 112: Erhöhtes Speicherkontingent für Sitzungen
Ab Chrome 112 wurde das Kontingent für die Property storage.session
auf etwa 10 MB erhöht. Diese Entscheidung wurde in der Web Extensions Community Group getroffen: https://github.com/w3c/webextensions/issues/350
Chrome 109: Dokumente außerhalb des Bildschirms
Dokumente, die nicht auf dem Bildschirm angezeigt werden, sind jetzt in Manifest V3-Erweiterungen verfügbar. Sie unterstützen die Umstellung von Hintergrundseiten auf Erweiterungs-Service-Worker, da sie DOM-bezogene Funktionen und APIs unterstützen. Weitere Informationen finden Sie in diesem Blogpost.
Chrome 110: Ist eine Erweiterung aktiviert?
Mit der Methode chrome.action.isEnabled()
wird programmatisch geprüft, ob eine Erweiterung für einen bestimmten Tab aktiviert wurde. So müssen Sie die Tabs nicht manuell aktivieren. Diese neue Methode nimmt eine Tab-ID und einen Verweis auf einen Rückruf an und gibt einen booleschen Wert zurück. Es gibt jedoch eine Einschränkung: Tabs, die mit chrome.declarativeContent
erstellt wurden, geben immer „falsch“ zurück.
(Der chrome.action
-Namespace hat vor Kurzem neue Methoden zur Steuerung des Erscheinungsbildes von Erweiterungslogos erhalten. Weitere Informationen finden Sie unter Farben für Logos festlegen.)
Chrome 110: Änderung des Zeitlimits für die Inaktivität von Service Workern
Bisher wurde ein Dienstworker einer Erweiterung häufig nach fünf Minuten beendet. Wir haben dieses Verhalten geändert, damit es der Lebensdauer von Service Workern im Web besser entspricht. Ein Erweiterungs-Dienst-Worker wird nach 30 Sekunden Inaktivität oder wenn die Verarbeitung einer einzelnen Aktivität länger als 5 Minuten dauert, heruntergefahren. Weitere Informationen finden Sie unter Längere Lebensdauer von Dienstworkern für Erweiterungen.
Beitrag: Einstellung von Manifest V2 wird pausiert
Der Zeitplan für die Einstellung von Manifest V2 wird überprüft und die für Anfang 2023 geplanten Tests werden verschoben. Weitere Informationen finden Sie in der Google-Gruppe „chromium-extensions“.
Chrome 110: Farben für Logos festlegen
Der chrome.action
-Namespace bietet zwei neue Methoden, mit denen Sie die Logos für die Erscheinungsform von Erweiterungen besser steuern können. Mit den Methoden setBadgeTextColor()
und getBadgeTextColor()
kann eine Erweiterung die Textfarbe des Logos ihres Symbolfelds ändern und abfragen. In Kombination mit setBadgeBackgroundColor
und getBadgeBackgroundColor
können Sie mit diesen neuen Methoden Design- und Markenkonsistenz erzwingen.
Blogpost: Weitere Informationen zur Umstellung auf Manifest V3
Wir haben den Zeitplan für die Einstellung von Manifest V2 verdeutlicht. Der Zeitplan für die Manifest V2-Unterstützung wurde ebenfalls entsprechend aktualisiert.
Aktualisierte Dokumentation: Bekannte Probleme bei der Migration zu Manifest V3
Wir haben eine Liste mit wichtigen Funktionen, die derzeit in der Entwicklung sind, und offenen Fehlern zusammengestellt. Mit dieser Seite möchten wir Entwicklern helfen, den aktuellen Stand der Plattform besser zu verstehen und zu wissen, auf welche Funktionen sie sich bei der Vorbereitung auf die Zukunft konzentrieren sollten.
Chrome Web Store: Upload von Bildern für „große Werbekacheln“ entfernt
Im Chrome Web Store wurde die Upload-Benutzeroberfläche für „große Werbekacheln“ auf dem Tab „Store-Eintrag“ des Artikels im Entwickler-Dashboard entfernt. Diese Änderung hat keine Auswirkungen auf die Nutzerfreundlichkeit, da diese Bilder nicht in der Benutzeroberfläche für Verbraucher verwendet wurden. Weitere Informationen finden Sie in diesem Chromium-Erweiterungen-Beitrag.
Chrome 106: Seiten mit „file://“-URLs dürfen nicht mehr auf webzugängliche Ressourcen zugreifen
Undurchsichtige Ursprünge wie iframes in Sandboxes und dynamischer Import sollten gemäß crbug.com/1219825#c11 ebenfalls auf webzugängliche Ressourcen zugreifen können.
Chrome 106: Fehler behoben, durch den bei einigen asynchronen API-Funktionen falsche finale Argumente zulässig waren
Bisher konnte bei asynchronen APIs in Manifest V3 ein ungültiges finales Argument angegeben werden, ohne dass Chrome einen Fehler meldete. Durch diese Korrektur meldet Chrome jetzt korrekt einen Fehler und gibt an, dass keine übereinstimmende Signatur gefunden wurde. Entwickler sollten ihre Erweiterungen in Canary auf Fehler prüfen, falls sie versehentlich eine falsche Signatur für einen API-Aufruf verwenden, der durch diese Fehlerkorrektur nicht mehr funktioniert.
Blogpost: Neugestaltung der Chrome Web Store-Analysen
Im Chrome Web Store wurde die Artikelanalyse für das Chrome Web Store-Entwickler-Dashboard überarbeitet. Das neue Dashboard ist auf einen Blick leichter verständlich und enthält die wichtigsten Informationen auf einen Blick. Weitere Informationen finden Sie in diesem Blogpost.
Chrome 105: Versprechen für die Identity API
Funktionen der Identity API unterstützen jetzt Promise-basierte Aufrufe. Dies hat eine geringfügige Änderung an der Oberfläche für identity.getAuthToken()
zur Folge. Bei der asynchronen Rückgabe, die auf einen versprechenbasierten Aufruf festgelegt ist, haben „token“ und „grantedScopes“ als Parameter für ein einzelnes Objekt (im Gegensatz zur Callback-Version, bei der sie als separate Argumente an den Callback übergeben werden).
Chrome 104: Neue Favicon-API für Manifest V3
Manifest V3-Erweiterungen können jetzt über ein neues URL-Muster auf Favicons zugreifen: chrome-extension://<id>/_favicon/
, wobei chrome://favicons
API der Manifest V2-Plattform ersetzt. Weitere Informationen finden Sie in der Favicon API-Dokumentation.
Aktualisierung der Dokumente: Offenlegung als Händler oder Nicht-Händler
Die Identifikation von Entwicklern als Händler oder Nicht-Händler wurde hinzugefügt. Darin werden Entwickler darüber informiert, dass sie ihren Status als Händler oder Nicht-Händler korrekt selbst angeben müssen.
Chrome 103: Wasm in Manifest V3 erfordert „wasm-unsafe-eval“
Chrome gewährt Erweiterungen standardmäßig keine script-src: wasm-unsafe-eval
mehr. Erweiterungen, die WebAssembly verwenden, müssen diese Direktive und den Wert jetzt explizit in ihren content_security_policy
-Deklarationen zu extension_pages
hinzufügen.
Chrome 103: Änderungen an MV3-Tastenkürzeln werden sofort wirksam
Wenn Sie die Tastenkombination einer Manifest V3-Erweiterung in chrome://extensions/shortcuts
ändern, werden die Änderungen jetzt sofort angewendet. Bisher musste die Erweiterung neu geladen werden, damit die Änderung wirksam wurde.
Chrome 102: Scripts für dynamische Inhalte in der Hauptwelt
Für dynamisch registrierte Inhaltsscripts kann jetzt die Welt angegeben werden, in die Assets eingefügt werden sollen. Weitere Informationen finden Sie unter scripting.registerContentScripts()
.
Chrome 102: Neues Manifest-Feld „optional_host_permissions“
Für Manifest V3-Erweiterungen kann jetzt der Schlüssel optional_host_permissions
in manifest.json angegeben werden. So können Manifest V3-Erweiterungen optionale Übereinstimmungsmuster für Hosts deklarieren, genau wie Manifest V2-Erweiterungen mit dem Schlüssel optional_permissions
.
Chrome 102: injectImmediately-Eigenschaft in scripting.executeScript()
chrome.scripting.executeScript()
akzeptiert jetzt eine optionale injectImmediately
-Property im injection
-Argument. Wenn diese Option vorhanden und auf „true“ gesetzt ist, wird das Script so schnell wie möglich in das Ziel eingefügt, anstatt auf document_idle
zu warten. Es ist jedoch nicht garantiert, dass das Script vor dem Laden der Seite eingefügt wird, da die Seite während des API-Aufrufs weiter geladen wird.
Chrome 102: Omnibox API-Unterstützung in Manifest V3
Die Omnibox API kann jetzt in Service Worker-basierten Erweiterungen verwendet werden. Bisher wurden bei einigen Methoden dieser API aufgrund interner Abhängigkeiten von DOM-Funktionen Fehler beim Aufruf geworfen.
Chrome 102: „wasm-unsafe-eval“ ist in Manifest V3-CSP zulässig
Manifest V3-Erweiterungen können jetzt wasm-unsafe-eval
in ihren content_security_policy
-Deklarationen enthalten. Durch diese Änderung können Manifest V3-Erweiterungen WebAssembly verwenden.
Chrome 102: Neue storage.session API
Manifest V3-Erweiterungen können jetzt den In-Memory-Speicher storage.session verwenden .
Docs-Update: Suche nach Chrome Web Store-Artikeln
Entdeckung im Chrome Web Store gibt einen Überblick darüber, wie Nutzer Artikel im Chrome Web Store finden und wie unsere Redakteure Artikel auswählen.
Chrome 101: Verbesserte Domainbedingungen für declarativeNetRequest
Die Regelbedingungen für declarativeNetRequest wurden aktualisiert, damit Erweiterungen Anfragen basierend auf den Domains „request“ und „initiator“ besser ausrichten können. Die relevanten Bedingungseigenschaften sind initiatorDomains
, excludedInitiatorDomains
, requestDomains
und excludedRequestDomains
. Weitere Informationen finden Sie auch in diesem Thread zu Chromium-Erweiterungen.
Chrome 100: Problem mit scripting.executeScript() auf neu erstellten Tabs behoben
Ein langjähriges Problem wurde behoben, bei dem der Aufruf von scripting.executeScript()
in einem neu erstellten Tab oder Fenster fehlschlagen konnte.
Chrome 100: Nativer Messaging-Port hält Service Worker aktiv
Wenn Sie über chrome.runtime.connectNative()
eine Verbindung zu einem nativen Messaging-Host im Service Worker einer Erweiterung herstellen, sollte der Service Worker so lange aktiv bleiben, wie der Port geöffnet ist.
Chrome 100: omnibox.setDefaultSuggestion() unterstützt Versprechen und Rückrufe
Die Methode omnibox.setDefaultSuggestion()
gibt jetzt ein Versprechen zurück oder akzeptiert einen Rückruf, damit Entwickler feststellen können, wann der Vorschlag richtig festgelegt wurde.
Chrome 100: Unterstützung von i18n.getMessage() in Erweiterungs-Service-Workern
Die chrome.i18n.getMessage()
API wird jetzt in Kontexten von Erweiterungs-Service-Workern unterstützt.
Chrome 99: match_origin_as_fallback in Canary
In Content-Scripts kann jetzt der Schlüssel match_origin_as_fallback
angegeben werden, der in Frames eingefügt werden soll, die mit einem übereinstimmenden Frame verknüpft sind, einschließlich Frames mit about:
-, data:
-, blob:
- und filesystem:
-URLs. Weitere Informationen finden Sie in der Dokumentation zu Content-Scripts.
Chrome 99: Unterstützung von Erweiterungs-Service-Workern für „file:“-Schemata in Canary
Service-Worker-basierte Manifest V2- und Manifest V3-Erweiterungen können jetzt die Fetch API verwenden, um file:
-Schema-URLs anzufordern. Für den Zugriff auf file:
-Schema-URLs muss der Nutzer weiterhin auf der Seite chrome://extensions
die Option „Zugriff auf Datei-URLs zulassen“ für die Erweiterung aktivieren.
Chrome 99: Unterstützung für Messaging-APIs in Canary
Für Erweiterungen, die für Manifest V3 erstellt wurden, wurde die Unterstützung von Promises für tabs.sendMessage
, runtime.sendMessage
und runtime.sendNativeMessage
hinzugefügt.
Docs-Update: Dokumentation zu Chrome Web Store-Rezensionen
Wir haben eine neue Referenzseite hinzugefügt, die einen Überblick über den Überprüfungsprozess im Chrome Web Store bietet und erklärt, wie die Durchsetzung der Programmrichtlinien für Entwickler erfolgt.
Chrome 98: scripting.executeScript() und scripting.insertCSS() akzeptieren mehrere Dateien
Die Methoden executeScript()
und insertCSS()
der Scripting API akzeptieren jetzt mehrere Dateien. Bisher war für diese Methoden ein Array mit einem einzelnen Dateieintrag erforderlich.
Aktualisierung der Dokumente: Fehlerbehebung bei Verstößen bei Rezensionen
Die Seite Fehlerbehebung bei Verstößen im Chrome Web Store wurde aktualisiert, um Entwicklern detailliertere Informationen zu häufigen Ablehnungsgründen zu bieten.
Chrome 96: Unterstützung von Versprechen für 27 weitere APIs erweitert
Dieser Release enthält deutlich mehr Updates für Versprechen als jeder vorherige Release. Die Updates umfassen sowohl allgemeine als auch ChromeOS-spezifische Erweiterungs-APIs. Maximieren Sie die folgenden Abschnitte, um weitere Informationen zu erhalten.
Erweiterungs-APIs
Eine Reihe von APIs unterstützt jetzt Promises in Manifest V3.
chrome.browsingData
chrome.commands
chrome.contentSettings
chrome.debugger
chrome.downloads
chrome.enterprise.hardwarePlatform
chrome.fontSettings
chrome.history
chrome.instanceID
chrome.permissions
chrome.processes
chrome.search
chrome.sessions
chrome.topSites
Außerdem unterstützen APIs, die den ChromeSetting
-Prototyp verwenden, jetzt auch Promises. Die folgenden APIs sind von dieser Änderung betroffen.
ChromeOS APIs
chrome.certificateProvider
chrome.documentScan
chrome.enterprise.deviceAttributes
chrome.enterprise.networkingAttributes
chrome.fileBrowserHandler
chrome.fileSystemProvider
chrome.loginState
chrome.printingMetrics
chrome.wallpaper
Chrome 96: Scripts für dynamische Inhalte
Die chrome.scripting
API unterstützt jetzt die Registrierung, Aktualisierung, Deaktivierung und Abruf einer Liste von Inhaltsscripts zur Laufzeit. Bisher konnten Inhaltsscripts nur statisch in manifest.json einer Erweiterung deklariert oder zur Laufzeit programmatisch mit chrome.scripting.executeScript()
eingefügt werden.
Update zu den Dokumenten: Zeitplan für die Manifest V2-Unterstützung
Der Zeitplan für die Umstellung von Manifest V2 auf Manifest V3 wurde in diesem Blogpost angekündigt und es wurde eine detailliertere Zeitleiste veröffentlicht.
Chrome 96: Berechtigung „declarativeNetRequestWithHostAccess“
Mit der neuen Berechtigung declarativeNetRequestWithHostAccess
können Erweiterungen die chrome.declarativeNetRequest
API auf Websites verwenden, für die die Erweiterung Hostberechtigungen hat. Außerdem können bestehende Manifest V2-Erweiterungen, die webRequest
, webRequestBlocking
und websitespezifische Hostberechtigungen verwenden, zur chrome.declarativeNetRequest
API migriert werden, ohne dass der Nutzer neue Berechtigungen genehmigen muss.
Chrome 95: Skripte können direkt in Seiten eingefügt werden
Mit der Methode executeScript()
der chrome.scripting
API können jetzt Scripts direkt in die Hauptwelt einer Seite eingefügt werden. Bisher konnten Erweiterungen nur direkt in die isolierte Welt der Erweiterung eingefügt werden. Weitere Informationen zu isolierten Welten finden Sie in der Dokumentation zu Inhaltsscripts.
Chrome 95: Unterstützung der Storage API
Methoden in der Manifest V3-Version der chrome.storage
API geben jetzt Promises zurück.
Richtlinienaktualisierung: Erzwingung der 2-Faktor-Authentifizierung
Der am 29. Juni 2021 veröffentlichte Blogpost zur Richtlinienaktualisierung wurde aktualisiert, um den Zeitplan für die Einführung der Bestätigung in zwei Schritten zu korrigieren.
Chrome 94: Änderungen an der statischen Regelliste für deklarative Netzwerkanfragen
Die chrome.declarativeNetRequest
unterstützt jetzt die Angabe von bis zu 50 statischen Regelsätzen (MAX_NUMBER_OF_STATIC_RULESETS) und die Aktivierung von bis zu 10 Regelsätzen (MAX_NUMBER_OF_ENABLED_STATIC_RULESETS) gleichzeitig.
Chrome 93: Unterstützung der ursprungsübergreifenden Isolierung
Sowohl Manifest V2- als auch Manifest V3-Erweiterungen können jetzt die Isolation verschiedener Ursprünge aktivieren. Mit dieser Funktion wird eingeschränkt, welche ressourcenübergreifenden Ressourcen die Seiten einer Erweiterung laden können. Außerdem können Webplattform-Funktionen auf niedriger Ebene wie SharedArrayBuffer
verwendet werden. Ab Chrome 95 ist eine Aktivierung erforderlich.
Richtlinienaktualisierung: Aktualisierte Richtlinien für das Entwicklerprogramm
Die Programmrichtlinien für Entwickler des Chrome Web Store wurden aktualisiert. Es wurden Erläuterungen zu den Richtlinien zu irreführenden Installationstaktiken, Spam und sich wiederholenden Inhalten hinzugefügt. Außerdem ist für die Veröffentlichung im Chrome Web Store jetzt eine Bestätigung in zwei Schritten erforderlich. Weitere Informationen finden Sie in diesem Blogpost.
Blogpost: Erweiterungsaktionen in Manifest V3
Chrome-Erweiterungen hatten jahrelang chrome.browserAction
- und chrome.pageActions
-APIs. Mit Manifest V3 wurden beide durch eine generische chrome.actions
API ersetzt. In diesem Beitrag erfahren Sie mehr über die Geschichte dieser APIs und was sich in Manifest V3 geändert hat. Lesen Sie den Beitrag.
Blogpost: chrome.scripting
Die chrome.scripting
API ist eine neue Manifest V3 API, die sich auf Scripting konzentriert. In diesem Beitrag gehen wir auf die Gründe für diese Änderung ein und sehen uns die neuen Funktionen genauer an. Lesen Sie den Beitrag.
Chrome 92: Unterstützung von Modul-Dienstmitarbeitern
Chrome unterstützt jetzt JavaScript-Module in Dienstprogrammen. So legen Sie ein Modul in Ihrem Manifest fest:
"background": {
"service_worker": "script.js",
"type": "module"
}
Dadurch wird das Worker-Script als ES-Modul geladen. Sie können dann das Keyword import
im Script des Workers verwenden, um andere Module zu importieren.
Chrome 91: chrome.action.getUserSettings()
Mit der neuen Methode chrome.action.getUserSettings()
können Erweiterungen feststellen, ob der Nutzer die Erweiterung an die Hauptsymbolleiste angepinnt hat.
Chrome 90: chrome.scripting.removeCSS()
Mit der neuen Methode chrome.scripting.removeCSS()
können Erweiterungen CSS entfernen, das zuvor über chrome.scripting.insertCSS()
eingefügt wurde. Er ersetzt chrome.tabs.removeCSS()
.
Chrome 90: Rückgabe von Promises von scripting.executeScript()
chrome.scripting.executeScript()
unterstützt jetzt das Zurückgeben von Promises. Wenn der resultierende Wert der Scriptausführung ein Versprechen ist, wartet Chrome, bis das Versprechen erfüllt ist, und gibt den resultierenden Wert zurück.
Chrome 90: Ergebnisse von chrome.scripting.executeScript() enthalten frameId
Die von chrome.scripting.executeScript()
zurückgegebenen Ergebnisse enthalten jetzt die frameId.
Das Attribut frameId
gibt den Frame an, aus dem das Ergebnis stammt. So können Erweiterungen Ergebnisse bei der Einschleusung in mehrere Frames ganz einfach den einzelnen Frames zuordnen.
Chrome 89: Neue API zum Verwalten von Tabgruppen
Mit der neuen chrome.tabGroups
API und den neuen Funktionen in chrome.tabs
können Erweiterungen Tabgruppen lesen und bearbeiten.
Erfordert Manifest V3.
Chrome 89: anpassbare Berechtigungen für über das Web zugängliche Ressourcen
Die Definitionen für über das Web zugängliche Ressourcen in Manifest V3 wurden geändert, damit Erweiterungen den Ressourcenzugriff basierend auf der Herkunft oder Erweiterungs-ID des Anfragenden einschränken können.
Blog post: Extension Manifest Converter
Das Chrome-Erweiterungen-Team hat den „Extension Manifest Converter“ als Open-Source-Software veröffentlicht. Dieses Python-Tool automatisiert einige der mechanischen Aspekte der Umwandlung von Erweiterungen in Manifest V3. Weitere Informationen finden Sie im Ankündigungsblogpost und auf GitHub.
Chrome 88: Allgemeine Verfügbarkeit von Manifest V3
Manifest V3 ist ein wichtiges Update der Erweiterungsplattform. Eine Zusammenfassung der neuen und geänderten Funktionen finden Sie unter Manifest V3 – Übersicht. Für Erweiterungen kann derzeit noch Manifest V2 verwendet werden. Diese Version wird aber in naher Zukunft eingestellt. Wir empfehlen Ihnen dringend, Manifest V3 für alle neuen Erweiterungen zu verwenden und so bald wie möglich mit der Migration vorhandener Erweiterungen zu Manifest V3 zu beginnen.