Wat is er nieuw in Chrome-extensies

Bezoek deze pagina regelmatig voor meer informatie over wijzigingen in Chrome-extensies, extensiedocumentatie, of gerelateerd beleid of andere wijzigingen. Andere mededelingen vindt u in de Google-groep Extensies . Het Chrome-schema vermeldt stabiele releasedatums en bèta-releasedatums.

Video: Interview met het Trust & Safety-team

geplaatst op

Het Chrome Extensions DevRel-team heeft een gesprek gehad met het Trust & Safety-team dat de beoordeling in de Chrome Web Store leidt om uw vragen te stellen. Bekijk de volledige video

Blogpost: De manifeste uitfasering van V2 begint

geplaatst op

Vanaf 3 juni zullen sommige gebruikers op de Chrome Bèta-, Dev- en Canary-kanalen, als ze nog Manifest V2-extensies hebben geïnstalleerd, een waarschuwingsbanner zien wanneer ze hun extensiebeheerpagina bezoeken - chrome://extensions - waarin ze worden geïnformeerd dat sommige (Manifest V2)-extensies die ze hebben geïnstalleerd, worden binnenkort niet langer ondersteund. Lees meer in de officiële aankondiging

Updates voor de gebruikersinterface op het zijpaneel

geplaatst op

We hebben onlangs enkele wijzigingen aangebracht in de gebruikersinterface van het zijpaneel, waaronder het toevoegen van een punaisepictogram en het verwijderen van het algemene zijpaneelpictogram. Lees meer in de PSA en bekijk onze bijgewerkte documentatie en voorbeelden .

Blogpost: Chrome-extensies op Google I/O 2024

geplaatst op

Er ligt weer een Google I/O achter de rug en we hebben alle spannende extensie-updates besproken! Ga naar YouTube om de volledige video te bekijken en lees onze blogpost voor enkele hoogtepunten.

Beoordeling overslaan voor in aanmerking komende Declarative Net Request-wijzigingen

geplaatst op

In de Chrome Web Store kunt u nu de beoordeling van in aanmerking komende wijzigingen overslaan als u de Declarative Net Request API gebruikt. Lees meer over geschiktheid en hoe u zich kunt aanmelden in de Chrome Web Store-documentatie .

implementPercentage beschikbaar in de Chrome Web Store API

geplaatst op

We hebben onlangs onze Chrome Web Store API-documentatie bijgewerkt met informatie over deployPercentage , waarmee u een percentage van een gedeeltelijke implementatie-implementatie kunt toewijzen. Meer informatie over deployPercentage .

Chrome 126: Origin-proefversies in extensies

geplaatst op

Chrome 126 introduceert een nieuw veld manifest.json - trial_tokens , waarmee u zich op alle extensie-oppervlakken kunt aanmelden voor Origin Trials en Deprecation Trials. Lees de handleiding voor meer informatie.

Blogpost: Wat gebeurt er in Chrome-extensies - april 2024

geplaatst op

We hebben een nieuwe editie gepubliceerd van What's Happening in Chrome Extensions . In het bericht wordt besproken waar het uitbreidingsteam de afgelopen maanden aan heeft gewerkt. Dit omvat: versie terugdraaien in de Chrome Web Store, betere Firebase Auth-ondersteuning en meer API-lanceringen en -updates.

Versie terugdraaien in het Chrome Web Store-ontwikkelaarsdashboard

geplaatst op

Zet uw extensie terug naar de eerder gepubliceerde versie in de Chrome Web Store, zonder aanvullende beoordeling! Lees de blogpost en documentatie voor meer informatie.

Chrome 124: Geavanceerde documentScan-API

geplaatst op

Er is nu een geavanceerde documentScan API beschikbaar op ChromeOS om afbeeldingen van aangesloten documentscanners te ontdekken en op te halen.

Chrome 124: WebGPU-ondersteuning in servicemedewerkers

geplaatst op

Sinds Chrome 124 ondersteunen servicemedewerkers WebGPU . Bekijk voor een snelle start het voorbeeld van de WebGPU-extensie .

Chrome 123: De Events API ondersteunt filteren op CIDR-blokken

geplaatst op

De Events API ondersteunt nu filteren op CIDR-blokken (Classless Inter-Domain Routing). Een CIDR-blok is een verzameling IP-adressen die een netwerkvoorvoegsel en hetzelfde aantal bits delen. Voorheen moest een ontwikkelaar die meerdere IP-adressen moest filteren een filterregel configureren voor elk van de adressen in het blokbereik. Wanneer een extensie addListener() aanroept, betekent een doorgegeven regel dat de gebeurtenishandler alleen wordt aangeroepen als het hostgedeelte van een URL een IP-adres is en zich bevindt in een van de CIDR-blokken die in een array zijn opgegeven.

Chrome Web Store: Updates van de vereisten voor de lengte van de extensienaam

geplaatst op

In de Chrome Web Store geldt nu een universele limiet van 75 tekens voor het veld "name" van een extensie in manifest.json. Voorheen was de limiet voor Engels 45 tekens en was er in andere landinstellingen geen beperking voor het veld "name" .

Dit was oorspronkelijk bedoeld om culturele en taalverschillen mogelijk te maken die mogelijk niet in hetzelfde aantal karakters kunnen worden vastgelegd. Helaas werd deze functie door een klein aantal ontwikkelaars misbruikt om de winkel te spammen. Als gevolg hiervan introduceren we een nieuwe universele limiet, een verhoging naar 75 tekens. Deze limiet dekt momenteel bijna alle extensies in de winkel, dus het is waarschijnlijk dat u als gevolg van deze wijziging geen actie hoeft te ondernemen. Als u een extensie probeert te uploaden die een naam heeft die langer is dan de maximale limiet, wordt de upload geblokkeerd door de winkel.

Blogpost: eyeo's reis naar het testen van de schorsing van servicemedewerkers

geplaatst op

In dit bericht van eyeo's Extension Engine-team onderzoeken we het probleem van het testen van extensieservicemedewerkers. In Manifest V2 stonden extensies op een achtergrondpagina, die gedurende de hele levenscyclus van de extensie actief waren. Manifest V3 maakt in plaats daarvan gebruik van servicemedewerkers, en servicemedewerkers besparen door hun ontwerp hulpbronnen door uit te schakelen wanneer ze niet nodig zijn. Dit brengt bepaalde testuitdagingen met zich mee. In dit bericht wordt uitgelegd hoe eyeo deze uitdagingen heeft aangepakt .

Chrome 123: Alarmen worden nu geactiveerd wanneer het apparaat slaapt

geplaatst op

Alarmen die zijn ingesteld met de chrome.alarms API worden niet langer vertraagd wanneer een apparaat in de sluimerstand gaat. Wanneer het apparaat wakker wordt, gaat het alarm één keer af, ongeacht hoeveel alarmen er zijn gemist. Stel bijvoorbeeld dat een alarm zo is ingesteld dat het één keer per uur afgaat en het apparaat waarop het alarm staat, slaapt van 0:55 uur tot 02:05 uur, dan activeert alleen het alarm om 02:00 uur de gebeurtenis onAlarm . Het vuurt zo dicht mogelijk bij 02:00 uur af, en onmiddellijk wanneer een apparaat ontwaakt als het in slaap was.

Deze wijziging brengt Chrome in lijn met het afgesproken gedrag in de Web Extensions Community Group.

Blogpost: Wijzigingen in bfcache-gedrag met extensie-berichtpoorten

geplaatst op

Back/forward cache (bfcache) is een browseroptimalisatie die directe terug- en vooruitnavigatie mogelijk maakt. Vanaf Chrome 123 wordt het berichtenkanaal gesloten wanneer een pagina met een open extensiepoort wordt opgeslagen in bfcache, wat betekent dat er geen berichten naar die pagina worden verzonden. Daarom moeten extensiescripts luisteren naar levenscyclusgebeurtenissen zoals onDisconnect en een nieuwe verbinding opzetten wanneer de pagina wordt hersteld vanuit BFCache.

Zie Wijzigingen in BFCache-gedrag met extensie message ports voor meer informatie en voorbeeldcode.

Chrome 122: Beloof ondersteuning voor asynchrone extensie-API's

geplaatst op

We zijn klaar met de implementatie van Promise-ondersteuning voor alle asynchrone extensie-API-methoden. Dit werd gedaan om API-methoden te moderniseren door de ergonomie van het omgaan met asynchrone bewerkingen te verbeteren. Een handvol methoden (bijvoorbeeld desktopCapture.chooseDesktopMedia() ) ondersteunt nog steeds alleen callbacks omdat hun huidige oppervlakken niet compatibel zijn met Promises. Voor achterwaartse compatibiliteit worden callbacks nog steeds ondersteund. Als u een belofte tegenkomt die mislukt, dient u een bug in .

Nieuwe richtlijnen voor realtime communicatie

geplaatst op

We hebben zojuist handleidingen gepubliceerd over realtime opties in extensies. Realtime updates zorgen voor een direct communicatiepad van uw servers rechtstreeks naar uw extensie-installaties. Daarnaast hebben we nieuwe richtlijnen voor het gebruik van chrome.gcm en Web Push .

Nieuwe richtlijnen en voorbeeld: Beëindiging van servicemedewerkers testen

geplaatst op

We hebben zojuist een handleiding gepubliceerd over het testen van de beëindiging van servicemedewerkers met Puppeteer . Het begeleidende voorbeeld demonstreert dit in Puppeteer en Selenium.

Bijgewerkt voorbeeld voor native messaging

geplaatst op

We hebben zojuist een bijgewerkt voorbeeld voor native messaging gepubliceerd. Met deze API kan uw extensie een andere applicatie starten en ermee communiceren. Met dank aan GitHub-bijdrager Shubham-Rasal voor het werk hieraan.

Chrome 121: Nieuwe eigenschap lastAccessed op tabbladen.Tab

geplaatst op

Er is een nieuwe eigenschap met de naam lastAccessed toegevoegd aan het object tabs.Tab . Deze eigenschap geeft aan wanneer het tabblad voor het laatst is geactiveerd. De geretourneerde waarde is in milliseconden sinds tijdperk.

Chrome 121: Niet-ondersteunde 'achtergrond'-toetsen geven nu een waarschuwing

geplaatst op

Bij de wijziging van Manifest V2 naar Manifest V3 zijn onderliggende elementen van de manifestsleutel "background" gewijzigd om vervanging van achtergrondscripts door extensieservicemedewerkers mogelijk te maken. Vroeger zou het toevoegen van de Manifest V2-sleutels "scripts" , "page" of "persistent" aan de "background" -sleutel van een Manifest V3-extensie een fout opleveren. De aanwezigheid van deze sleutels veroorzaakt nu een waarschuwing.

Dit wordt gedaan om het gebruik van één manifestbestand in extensies in meerdere browsers mogelijk te maken, volgens een voorstel in de communitygroep .

Chrome 120: Minimale alarmgranulariteit teruggebracht tot 30 seconden

geplaatst op

Vanaf Chrome 120 kunnen Manifest V3-extensies de chrome.alarms API gebruiken met vertragingen of perioden van 30 seconden, in plaats van waarden van 60 seconden of meer te vereisen.

Blogpost: Hervatting van de transitie naar Manifest V3

geplaatst op

De Manifest V2-ondersteuningstijdlijn is bijgewerkt. Zie onze blogpost van november 2023 voor meer informatie.

Blogpost: Verbeteringen aan ondersteuning voor inhoudsfiltering in Manifest V3

geplaatst op

Lees meer over hoe we de declarativeNetRequest API hebben verbeterd in onze nieuwe blogpost .

Blogpost: Wat is er nieuw in Chrome 120 voor extensies

geplaatst op

Chrome 120 Bèta is onlangs uitgebracht. Lees onze nieuwe blogpost: Wat is er nieuw in Chrome 120 voor extensies voor een samenvatting van de belangrijke updates die relevant zijn voor ontwikkelaars van extensies. Deze release markeert ook een belangrijke mijlpaal omdat de laatste twee items (userScripts, bestandshandler op ChromeOS) worden verwijderd uit de lijst met kritieke platformhiaten .

PSA: Wijziging in de verwerking van privacybeleid-URL's in het ontwikkelaarsdashboard

geplaatst op

Het privacybeleid in het ontwikkelaarsdashboard is nu toegevoegd op itemniveau. Hierdoor kunt u per artikel een ander privacybeleid opgeven. Lees meer over deze wijziging in onze PSA .

Video: Een gesprek met Matt Frisbie

geplaatst op

We hebben zojuist een nieuwe video gepubliceerd op het Chrome for Developers YouTube-kanaal waarin we chatten met Google Developer Expert en auteur Matt Frisbie. Bekijk het hier .

Nieuwe richtlijnen voor het testen van extensies

geplaatst op

We hebben zojuist nieuwe richtlijnen gepubliceerd over het schrijven van geautomatiseerde tests voor extensies, inclusief het schrijven van unit-tests en zowel algemene richtlijnen als een tutorial over end-to-end testen.

Blogpost: Wat gebeurt er in Chrome-extensies - oktober 2023

geplaatst op

We hebben zojuist de tweede editie van What's Happening in Chrome Extensions gepubliceerd. De post bespreekt waar het uitbreidingsteam de afgelopen maanden aan heeft gewerkt, waaronder het aanpakken van stabiliteitsproblemen met servicemedewerkers en het boeken van goede vooruitgang bij het dichten van alle gaten in het MV3-platform. We delen ook spannende aankomende API-releases zoals de Reading List API en de User Scripts API.

Verhoogde limieten voor statische regelsets in de Declarative Net Request API

geplaatst op

Naar aanleiding van feedback in de Web Extensions Community Group verhogen we de limiet voor ingeschakelde statische regelsets aanzienlijk van 10 naar 50. Daarnaast verhogen we het totale aantal toegestane statische regelsets van 50 naar 100. Dit is momenteel beschikbaar in Canary.

Verbeterde begeleiding rond op afstand gehoste code

geplaatst op

Een vereiste voor Manifest V3 is dat extensies niet langer op afstand gehoste code mogen gebruiken. Hoewel dit vanaf het begin deel uitmaakte van onze migratiegids , vonden we het de moeite waard om de richtlijnen rond dit probleem te verbeteren. Die pagina biedt nu meer informatie, beschrijft wat er nog steeds mogelijk is in Manifest V3 en biedt meer informatie over strategieën voor upgraden.

Er is een gerelateerde toevoeging aan het probleem van het oplossen van schendingen van de Chrome Web Store . In een nieuwe sectie worden veelvoorkomende redenen beschreven waarom extensies met op afstand gehoste code worden afgewezen.

Chrome 118: isUrlFilterCaseSensitive is nu standaard ingesteld op false

geplaatst op

Vanaf Chrome 118 is de eigenschap isUrlFilterCaseSensitive in de chrome.declarativeNetRequest API standaard gewijzigd in false . Als u het oude gedrag wilt behouden, kunt u isUrlFilterCaseSensitive expliciet instellen op true in uw declarativeNetRequest-regels.

Dit volgt op discussies in de Web Extensions Community Group. Firefox en Safari hebben al een soortgelijke wijziging doorgevoerd.

Documentatie over cookies en webopslag-API's

geplaatst op

We hebben een nieuwe handleiding gepubliceerd over hoe cookies en webopslag-API's werken in Chrome-extensies . Het bevat details over wijzigingen in de cookie- en opslagpartitionering in Privacy Sandbox , een lopend project om cookies van derden af ​​te schaffen door de creatie van een reeks nieuwe webplatform-API's, en details over hoe ze werken in extensies.

Extensievoorbeelden zijn nu doorzoekbaar

geplaatst op

We hebben onlangs een pagina gemaakt waarop u voorbeelden van Chrome-extensies kunt doorzoeken . De zoekpagina heeft meerdere opties. Met een zoekvak kunt u naar tekst in voorbeeldtitels zoeken. U kunt de zoekopdracht beperken op basis van toestemming of extensie-API. Met een extra filter kunt u de zoekopdracht beperken tot API- of functionele (use case) voorbeelden.

Deze nieuwe voorbeeldpagina is gebouwd door een Google Summer of Code-deelnemer, Xuezhou Dai, die ook verschillende nieuwe voorbeelden heeft bijgedragen. Hun ervaringen afgelopen zomer kun je lezen in hun post op onze blog .

Net als voorheen zijn onze codevoorbeelden nog steeds beschikbaar op GitHub voor klonen of forken.

Chrome 118: Wijzigingen in openingsbestand: schema-URL's

geplaatst op

Vanaf Chrome 118 moeten extensies de instelling 'Toegang tot bestands-URL's toestaan' hebben ingeschakeld op de pagina chrome://extensions om file://-schema-URL's te openen met behulp van de Tabs- of Windows- API's. U kunt deze toegang programmatisch controleren door chrome.extension.isAllowedFileSchemeAccess() aan te roepen. Firefox beperkt al bestands-URL's en Safari ondersteunt de wijziging. Lees voor meer informatie het bericht in de extensies Google Group .

Chrome 117: uitgebreide URL-beveiliging voor API-navigatie met extensies

geplaatst op

Eerdere navigatie die werd geactiveerd door extensie-API-aanroepen voor tabs.update() , tabs.create() en windows.create() gaf een foutmelding voor sommige chrome:// URL's. Bovendien was het aanroepen van tabs.update() met een JavaScript-URL verboden. In 117 zijn deze beveiligingen op JavaScript-URL's uitgebreid naar de methode tabs.create() en zijn er een aantal extra chrome://-URL's toegevoegd aan de lijst met verboden URL's die van toepassing zijn op alle eerder genoemde methoden.

Verbeterde richtlijnen voor de declarativeNetRequest API

geplaatst op

De chrome.declarativeNetRequest API blokkeert of wijzigt netwerkverzoeken door declaratieve regels op te geven. Hierdoor kunnen extensies netwerkverzoeken wijzigen zonder deze te onderscheppen en de inhoud ervan te bekijken, waardoor gebruikers meer privacy krijgen. Het is ook lastig te gebruiken. Met dat in gedachten hebben we de richtlijnen herschreven op een manier die volgens ons een duidelijker beeld schetst van hoe declaratieve regelsets geïmplementeerd kunnen worden. Lees het nieuwe gedeelte via de bovenstaande link.

Uw Google Analytics-account gebruiken met de Chrome Web Store

geplaatst op

De Chrome Web Store biedt integratie met Google Analytics, waarmee u analyses voor uw Chrome Web Store-vermelding kunt bekijken naast de weergave die wordt aangeboden in het ontwikkelaarsdashboard. Voor meer informatie leest u Uw Google Analytics-account gebruiken met de Chrome Web Store .

Chrome 115: DevTools stapt standaard over contentscripts heen

geplaatst op

Geïnjecteerde inhoudsscripts staan ​​nu standaard in de negeerlijst van DevTools. Dit heeft geen invloed op breekpunten, maar het betekent wel dat inhoudsscripts tijdens het debuggen worden overgeslagen en dat uitzonderingen op deze scripts worden genegeerd. Wanneer een inhoudsscript geopend is op het tabblad Bronnen , wordt u via een banner gewaarschuwd of dit is ingeschakeld en wordt een optie geboden om uw inhoudsscript uit de negeerlijst te verwijderen. Om dit gedrag uit te schakelen, opent u DevTools, gaat u naar Instellingen en vervolgens naar Negeerlijst . Zie Wat is er nieuw in DevTools voor meer informatie.

Chrome 116 bèta: meer dan we hier kunnen plaatsen

geplaatst op

Chrome 116 is een grote release voor extensies. U kunt nu zijpanelen programmatisch openen. Met een nieuwe methode kunt u ontdekken of er een actief document buiten het scherm is. Servicemedewerkers kregen verschillende verbeteringen. Er zijn genoeg verbeteringen in 116 dat we er een blogpost over hebben geschreven. Chrome 116 is vanaf 19 juli in bèta.

Blogpost: Wat gebeurt er in Chrome-extensies

geplaatst op

We hebben zojuist een overzicht gepubliceerd van de wijzigingen en verbeteringen aan extensies van dit jaar. Het bericht bespreekt de grote nieuwe functies van het jaar, waaronder de Side Panel API, verbeteringen voor servicemedewerkers en offscreen-documenten. U krijgt ook een voorproefje van waar we dit kwartaal aan werken. Het artikel bevat nog veel meer, met links naar alles.

Nieuwe richtlijnen en voorbeelden: leer hoe u Google Analytics 4 gebruikt in uw Chrome-extensie

geplaatst op

We hebben nieuwe richtlijnen en voorbeelden voor Google Analytics en geolocatie gepubliceerd:

Chrome 115: geef meerdere redenen op in chrome.offscreen.createDocument()

geplaatst op

U kunt nu meerdere reason opgeven bij het aanroepen van chrome.offscreen.createDocument() . Gebruik dit wanneer een document buiten het scherm voor meerdere doeleinden wordt gebruikt. De browser gebruikt de opgegeven redenen om de levensduur van het offscreen-document te bepalen.

Nieuwe tool: Testtool voor extensie-updates

geplaatst op

We hebben zojuist de Extension Update Testing Tool uitgebracht, een lokale updateserver voor extensies die kan worden gebruikt voor het testen van updates voor Chrome-extensies tijdens lokale ontwikkeling, inclusief het verlenen van toestemming. De tool toont het updateproces van de gebruiker, inclusief het uitgeschakeld houden van een extensie totdat een gebruiker nieuw aangevraagde machtigingen verleent. Deze tool is met name handig voor het simuleren van de gevraagde toestemmingswijzigingen bij het updaten van een extensie van Manifest V2 naar Manifest V3.

Chrome 114: Nieuwe zijpaneel-API

geplaatst op

Introductie van de nieuwe Side Panel API, een begeleidend oppervlak waarmee gebruikers toegang hebben tot tools naast de inhoud die ze bekijken. Ga voor meer informatie naar de Side Panel API-referentie . Daarnaast hebben we veel zijpaneelvoorbeelden toegevoegd aan onze GitHub-voorbeeldrepository . We delen ook meer over zijpanelen in de nieuwe blogpost Een superieure gebruikerservaring ontwerpen met de nieuwe zijpanelen-API . Ons beleid inzake kwaliteitsrichtlijnen en best practices zijn ook herzien om verdere richtlijnen te bieden voor het maken van hoogwaardige zijpaneelverlengingen.

Uw feedback is belangrijk bij het ontwikkelen van deze API; deel uw mening en functieverzoeken in de chroomgroepen . Houd ons in de gaten voor nieuwe updates terwijl we de Side Panel API blijven verbeteren.

Nieuwe voorbeelden: WASM in extensies

geplaatst op

Er zijn twee nieuwe voorbeelden beschikbaar die laten zien hoe je WASM in een extensie kunt gebruiken:

Speciale dank aan GitHub-bijdrager @daidr voor deze voorbeelden.

Bijgewerkte richtlijnen voor Manifest V3-migratie

geplaatst op

We hebben het gedeelte Bekende problemen van onze Manifest V3-migratierichtlijnen bijgewerkt met een bijgewerkte lijst met hiaten in het extensieplatform die we willen dichten voordat we een nieuwe tijdlijn voor de beëindiging van Manifest V2 aankondigen.

Audio en video opnemen met Manifest V3

geplaatst op

We hebben zojuist een nieuw artikel gepubliceerd met de titel Audio-opname en schermopname , waarin wordt beschreven hoe u audio of video kunt opnemen vanaf een tabblad, venster of scherm in Manifest V3. In dit artikel worden meerdere benaderingen voor het opnemen beschreven, waarbij gebruik wordt gemaakt van de chrome.tabCapture API en de functie getDisplayMedia() .

Chrome 114: verhoogd opslag- en lokaal quotum

geplaatst op

We hebben het quotum voor de eigenschap storage.local verhoogd tot ongeveer 10 MB. Dit is overeengekomen in de Web Extensions Community Group . Dit brengt storage.local in lijn met storage.session die is gewijzigd in Chrome 112.

Nieuwe handleiding en hulp voor extensieservicemedewerkers

geplaatst op

Servicemedewerkers vormen een integraal onderdeel van Chrome-extensies. We hebben zojuist een tutorial gepubliceerd waarin de basisprincipes van registratie, foutopsporing en interactie met servicemedewerkers worden uitgelegd. We hebben ook een nieuwe handleiding voor servicemedewerkers toegevoegd waarin belangrijke concepten gedetailleerder worden uitgelegd. We zullen deze sectie de komende maanden uitbreiden.

Meer tips voor het oplossen van problemen bij schendingen van de webwinkel

geplaatst op

Om te helpen bij het publiceren in de Chrome Web Store hebben we op twee gebieden nieuwe richtlijnen toegevoegd. Richtlijnen voor minimale functionaliteit zijn erop gericht gebruikers voordelen te bieden en hun browse-ervaring te verrijken. De richtlijnen voor partneradvertenties zijn bedoeld om gebruikers bewust te maken van extensies met behulp van partnerlinks of codes voor het genereren van inkomsten, en hen enige controle te geven door actie van de gebruiker te vereisen voordat deze worden opgenomen.

Nieuwe instructies voor de Extension Manifest Converter

geplaatst op

We hebben de README voor de Extension Manifest Converter herschreven, zodat u gemakkelijker kunt zien wat u moet doen nadat u de tool hebt uitgevoerd. De converter helpt bij het migreren van extensies die op Manifest V2 zijn gebouwd naar Manifest V3. De nieuwe README beschrijft wat de tool doet met woorden die nauw overeenkomen met die in de checklist van de migratiegids . De converter doet niet alles, maar elimineert wel veel taken waarvoor geen menselijk oordeel nodig is.

Chrome 113: nieuwe redenen voor documenten buiten het scherm

geplaatst op

We hebben twee nieuwe redentypen toegevoegd aan de Offscreen Documents API. Gebruik LOCAL_STORAGE om toegang te krijgen tot de localStorage API van het webplatform. Gebruik WORKER bij het maken van webworkers.

Google Analytics 4 nu in het ontwikkelaarsdashboard

geplaatst op

Het Chrome Web Store Developer Dashboard ondersteunt nu Google Analytics 4 (GA4). We hebben het instellen van Google Analytics vereenvoudigd en het toegangsbeheer voor groepsuitgevers eenvoudiger gemaakt. Als u eerder Google Universal Analytics heeft gebruikt om de activiteit van uw winkelvermelding bij te houden, moet u vóór 1 juli 2023 actie ondernemen om ervoor te zorgen dat u gegevens over uw winkelvermelding blijft ontvangen. Zie het bericht over de Chromium Extensions Google Group voor meer informatie.

De File Handling API komt naar ChromeOS

geplaatst op

De File Handler API is beschikbaar voor experimenten op ChromeOS in Canary voor versies 112 en 113. Hiermee kunnen extensies op ChromeOS bestanden openen met gespecificeerde MIME-typen en bestandsextensies. Om bestandsafhandeling te implementeren, voegt u een set regels toe aan manifest.json . Deze functie werkt hetzelfde als voor progressieve webapps. Voor meer informatie, zie het artikel elders op deze site.

Bestandsverwerking inschakelen:

  • Start Chrome vanaf 112 met de vlag --enable-features=ExtensionWebFileHandlers , beginnend in 112
  • Plak vanaf 113 os://flags/#extension-web-file-handlers in de Chrome-omnibox en selecteer 'Ingeschakeld' in het vervolgkeuzemenu.

We hopen deze functie eind juni in Chrome 115 te lanceren. Houd deze ruimte in de gaten voor updates.

Nieuwe voorbeelden: dynamische declaraties en programmatische injectie

geplaatst op

We hebben een nieuw voorbeeld gebouwd voor de chrome.scripting API. Het demonstreert dynamische declaraties, waarbij een inhoudsscript tijdens runtime wordt geregistreerd, en programmatische injectie, waarbij een script wordt uitgevoerd op een tabblad dat al geopend is.

Nieuwe voorbeelden: gebruiksscenario's voor declaratieve Net Request

geplaatst op

Er zijn drie nieuwe voorbeelden beschikbaar die de Declarative Net Request API demonstreren. Elk demonstreert de implementatie van een enkele use case. De eerste laat zien hoe u cookies kunt blokkeren. De overige twee demonstreren het blokkeren en omleiden van URL's.

Chrome 112: verhoogd opslag- en sessiequotum

geplaatst op

Vanaf Chrome 112 is het quotum voor de eigenschap storage.session verhoogd naar ongeveer 10 MB. Dit is overeengekomen in de Web Extensions Community Group: https://github.com/w3c/webextensions/issues/350

Chrome 109: Documenten buiten het scherm

geplaatst op

Documenten buiten het scherm zijn nu beschikbaar in Manifest V3-extensies. Deze helpen bij de overgang van achtergrondpagina's naar extensieservicemedewerkers door ondersteuning te bieden voor DOM-gerelateerde functies en API's. Voor meer informatie, lees de blogpost .

Chrome 110: Is een extensie ingeschakeld

geplaatst op

De methode chrome.action.isEnabled() controleert programmatisch of een extensie is ingeschakeld voor een specifiek tabblad. Dit bespaart u het behouden van de ingeschakelde status van uw tabbladen. Deze nieuwe methode gebruikt een tabblad-ID en een verwijzing naar een callback en retourneert een Booleaanse waarde. Er is één beperking: tabbladen die zijn gemaakt met chrome.declarativeContent retourneren altijd false.

(De naamruimte chrome.action heeft onlangs nieuwe methoden gekregen om de weergave van extensiebadges te bepalen. Zie Badgekleuren instellen voor meer informatie.)

Chrome 110: Wijziging in de time-out voor inactieve servicemedewerkers

geplaatst op

Voorheen stopte een medewerker van de uitbreidingsdienst vaak na vijf minuten. We hebben dit gedrag gewijzigd, zodat het meer lijkt op de levensduur van servicemedewerkers op internet. Een medewerker van de uitbreidingsservice wordt uitgeschakeld na dertig seconden inactiviteit of als de verwerking van een enkele activiteit langer dan vijf minuten duurt. Zie Langere levensduur van servicemedewerkers voor meer informatie.

Post: Uitfasering van Manifest V2 onderbreken

geplaatst op

De tijdlijnen voor de beëindiging van Manifest V2 worden momenteel herzien en de experimenten die gepland staan ​​voor begin 2023 worden uitgesteld. Lees voor meer informatie de update in de Chrome-extensies Google Group.

Chrome 110: badgekleuren instellen

geplaatst op

De naamruimte chrome.action heeft twee nieuwe methoden om u meer controle te geven over de badges voor uiterlijkextensies. Met de methoden setBadgeTextColor() en getBadgeTextColor() kan een extensie de badgetekstkleur van het werkbalkpictogram wijzigen en opvragen. Bij gebruik met setBadgeBackgroundColor en getBadgeBackgroundColor kunt u met deze nieuwe methoden ontwerp- en merkconsistentie afdwingen.

Blogpost: Meer details over de transitie naar Manifest V3

geplaatst op

We hebben de tijdlijn voor de beëindiging van Manifest V2 verduidelijkt . De Manifest V2-ondersteuningstijdlijn is ook bijgewerkt om deze informatie weer te geven.

Documentenupdate: bekende problemen bij het migreren naar Manifest V3

geplaatst op

We hebben een lijst samengesteld met de belangrijkste functies die momenteel in ontwikkeling zijn en openstaande bugs . Ons doel met deze pagina is om ontwikkelaars te helpen de huidige status van het platform beter te begrijpen en welke functies ze kunnen targeten terwijl ze zich voorbereiden op de toekomst.

Chrome Web Store: upload van afbeelding 'grote promotietegel' verwijderd

geplaatst op

Chrome Web Store heeft de upload-UI voor de 'grote promotietegel' verwijderd van het tabblad 'Winkelvermelding' in het ontwikkelaarsdashboard. Deze wijziging heeft geen invloed op de eindgebruikerservaring, aangezien deze afbeeldingen niet in de consumenteninterface zijn gebruikt. Zie dit bericht over chroomextensies voor meer informatie.

Chrome 106: Sta pagina's op file:// urls toe om toegang te krijgen tot webtoegankelijke bronnen

geplaatst op

Ondoorzichtige bronnen, zoals iframes in een sandbox en dynamische import, zouden volgens crbug.com/1219825#c11 ook toegang moeten hebben tot webtoegankelijke bronnen.

Chrome 106: Bug opgelost die onjuiste eindargumenten toestond bij sommige asynchrone API-functies

geplaatst op

Voorheen kon Manifest V3 asynchrone API's aanroepen en een ongeldig eindargument opleveren en Chrome maakte geen fout. Met deze oplossing zal Chrome nu correct fouten maken en melden dat er geen overeenkomende handtekening is. Ontwikkelaars worden aangemoedigd om hun extensies op Canary te controleren op eventuele fouten voor het geval ze per ongeluk een onjuiste handtekening gebruiken voor een API-aanroep die door deze bugfix wordt verbroken.

Blogpost: Vernieuwing van de analyses van de Chrome Web Store

geplaatst op

Chrome Web Store heeft een vernieuwde itemanalyse-ervaring voor het Chrome Web Store-ontwikkelaarsdashboard. Het nieuwe dashboard is in één oogopslag gemakkelijker te begrijpen en consolideert de nuttigste informatie vooraf. Lees de blogpost voor meer informatie.

Chrome 105: beloften voor de Identity API

geplaatst op

Functies op de Identity API ondersteunen nu op belofte gebaseerde aanroepen. Dit gaat gepaard met een kleine verandering aan de oppervlakte voor identity.getAuthToken() , waarbij de asynchrone return ingesteld op een op belofte gebaseerde aanroep "token" en "grantedScopes" zal hebben als parameters voor een enkel object (in tegenstelling tot de callback-versie die deze ontvangt als afzonderlijke argumenten voor de callback).

Chrome 104: Nieuwe favicons-API voor Manifest V3

geplaatst op

Manifest V3-extensies hebben nu toegang tot favicons met behulp van een nieuw URL-patroon: chrome-extension://<id>/_favicon/ , waarbij is de ID van uw extensie. Dit vervangt de chrome://favicons API van het Manifest V2-platform. Zie de Favicon API- documentatie voor meer informatie.

Documentupdate: openbaarmaking van ontwikkelaarshandelaar/niet-handelaar

geplaatst op

De identificatie van de handelaar/niet-handelaar-ontwikkelaar toegevoegd, waarmee ontwikkelaars hun status als handelaar/niet-handelaar nauwkeurig zelf kunnen aangeven.

Chrome 103: Wasm in Manifest V3 vereist wasm-unsafe-eval

geplaatst op

Chrome kent niet langer standaard extensies script-src: wasm-unsafe-eval toe. Extensies die WebAssembly gebruiken, moeten deze richtlijn en waarde nu expliciet toevoegen aan extension_pages in hun content_security_policy declaraties.

Chrome 103: Het wijzigen van MV3-snelkoppelingen wordt onmiddellijk van kracht

geplaatst op

Wanneer u de sneltoets van een Manifest V3-extensie wijzigt op chrome://extensions/shortcuts , worden updates nu onmiddellijk toegepast. Voorheen moest de extensie opnieuw worden geladen voordat de wijziging van kracht werd.

Chrome 102: dynamische inhoudsscripts in de hoofdwereld

geplaatst op

Dynamisch geregistreerde contentscripts kunnen nu de wereld specificeren waarin assets worden geïnjecteerd. Zie scripting.registerContentScripts() voor details.

Chrome 102: Nieuw manifestveld "optionele_host_permissions"

geplaatst op

Manifest V3-extensies kunnen nu de optional_host_permissions sleutel opgeven in manifest.json. Hierdoor kunnen Manifest V3-extensies optionele overeenkomstpatronen voor hosts declareren, net zoals Manifest V2-extensies dat zouden kunnen met behulp van de optional_permissions sleutel.

Chrome 102: eigenschap injectImmediately in scripting.executeScript()

geplaatst op

chrome.scripting.executeScript() accepteert nu een optionele eigenschap injectImmediately op zijn injection . Indien aanwezig en ingesteld op true, zal het script zo snel mogelijk in het doel worden geïnjecteerd, in plaats van te wachten op document_idle . Houd er rekening mee dat dit geen garantie is dat het script wordt geïnjecteerd voordat de pagina wordt geladen, aangezien de pagina blijft laden terwijl de API-aanroep wordt gedaan.

Chrome 102: Omnibox API-ondersteuning in Manifest V3

geplaatst op

De Omnibox API kan nu worden gebruikt in op servicewerknemers gebaseerde extensies. Voorheen werden sommige van deze API-methoden aangeroepen vanwege interne afhankelijkheden van DOM-mogelijkheden.

Chrome 102: wasm-unsafe-eval toegestaan ​​in Manifest V3 CSP

geplaatst op

Manifest V3-extensies kunnen nu wasm-unsafe-eval opnemen in hun content_security_policy declaraties. Door deze wijziging kunnen Manifest V3-extensies WebAssembly gebruiken.

Chrome 102: Nieuwe storage.session-API

geplaatst op

Manifest V3-extensies kunnen nu worden gebruikt in geheugenopslag storage.session .

Documentenupdate: detectie van Chrome Web Store-items

geplaatst op

Discovery in de Chrome Web Store geeft een overzicht van hoe gebruikers items in de Chrome Web Store vinden en hoe onze redacteurs items selecteren om uit te lichten.

Chrome 101: Verbeterde declaratieveNetRequest-domeinvoorwaarden

geplaatst op

declarativeNetRequest -regelvoorwaarden zijn bijgewerkt zodat extensies verzoeken beter kunnen targeten op basis van de "request"- en "initiator"-domeinen van het verzoek. De relevante voorwaarde-eigenschappen zijn initiatorDomains , excludedInitiatorDomains , requestDomains en excludedRequestDomains . Zie ook dit draadje over chroomextensies .

Chrome 100: probleem opgelost met scripting.executeScript() op nieuw gemaakte tabbladen

Er is een al lang bestaand probleem opgelost waarbij het aanroepen van scripting.executeScript() op een nieuw gemaakt tabblad of venster kon mislukken.

Chrome 100: native messaging-poort houdt servicemedewerkers in leven

geplaatst op

Door verbinding te maken met een native messaging-host met behulp van chrome.runtime.connectNative() in de service worker van een extensie, moet de service worker in leven blijven zolang de poort open is.

Chrome 100: omnibox.setDefaultSuggestion() ondersteunt beloften en callbacks

geplaatst op

De methode omnibox.setDefaultSuggestion() retourneert nu een belofte of accepteert een callback, zodat ontwikkelaars kunnen bepalen wanneer de suggestie correct is ingesteld.

Chrome 100: i18n.getMessage() ondersteuning voor extensieservicemedewerkers

geplaatst op

De chrome.i18n.getMessage() API wordt nu ondersteund in extensieservicewerknemercontexten.

Chrome 99: match_origin_as_fallback in Canarische

geplaatst op

Content scripts kunnen nu de match_origin_as_fallback -toets opgeven om te injecteren in frames die gerelateerd zijn aan een bijpassend frame, inclusief frames met about: , data: , blob: en filesystem: URL's. Zie de documentatie van de inhoudscripts voor meer informatie.

Chrome 99: Ondersteuning van de extensieservice voor bestand: schema's in Canary

geplaatst op

Op servicemedewerker gebaseerde manifest V2 en manifest V3 -extensies kunnen nu de fetch API gebruiken om file: -Scheme URL's. Toegang tot file: -Scheme URL's vereist nog steeds dat de gebruiker 'toegang tot bestands -URL's toestaat' voor de extensie op de pagina chrome://extensions .

Chrome 99: Promise Support for Messaging API's in Canary

geplaatst op

Belofteondersteuning is toegevoegd aan tabs.sendMessage , runtime.sendMessage en runtime.sendNativeMessage voor extensies gebouwd voor manifest V3.

Documentenupdate: documentatie van Chrome Web Store Review

geplaatst op

Een nieuwe referentiepagina toegevoegd die een overzicht biedt van het Chrome Web Store Review -proces en legt uit hoe de handhaving van het ontwikkelaarsprogramma -beleid wordt afgehandeld.

Chrome 98: scripting.executescript () en scripting.insertcss () accepteren meerdere bestanden

geplaatst op

De methoden executeScript() en insertCSS() van de Scripting API accepteren nu meerdere bestanden. Eerder vereisten deze methoden een array met een enkele bestandsvermelding.

Documentenupdate: updates van het oplossen van schending oplossen

geplaatst op

De pagina Problemen oplossen Chrome Web Store -overtredingen is bijgewerkt om ontwikkelaars meer gedetailleerde richtlijnen te bieden om veel voorkomende redenen voor afwijzing.

Chrome 96: uitgebreide belofteondersteuning aan 27 meer API's

geplaatst op

Deze release bevat aanzienlijk meer belofte -updates dan elke eerdere release. Updates omvatten zowel algemene als chromeos-specifieke extensies API's. Vouw de volgende secties uit voor details.

Extensions API's

Een aantal API's ondersteunen nu beloften in manifest V3.

Ook ondersteunen API's die het ChromeSetting -prototype gebruiken nu ook beloften. De volgende API's worden beïnvloed door deze wijziging.

Chromeos API's

Chrome 96: Dynamische inhoudscripts

geplaatst op

De chrome.scripting API ondersteunt nu het registreren , bijwerken , niet -registreren en krijgen van een lijst met contentscripts tijdens runtime. Eerder konden inhoudscripts alleen statisch worden verklaard in de manifest van een extensie. JSON of programmatisch geïnjecteerd tijdens runtime met chrome.scripting.executeScript() .

Documenten Update: Manifest V2 Support Timeline

geplaatst op

De manifest V2 naar V3 -overgangstijdlijn werd aangekondigd in deze blogpost en een meer gedetailleerde tijdlijnpagina werd gepubliceerd.

Chrome 96: DeclarativenTrequestWithHostaccess -toestemming

geplaatst op

Met de nieuwe declarativeNetRequestWithHostAccess -toestemming kunnen extensies de chrome gebruiken chrome.declarativeNetRequest API op locaties waarvoor de extensie hostrechten heeft. Dit maakt ook bestaande manifest V2-extensies mogelijk die gebruik maken van webRequest , webRequestBlocking en site-specifieke hostvergunning om te migreren naar de chrome.declarativeNetRequest API zonder dat de gebruiker nieuwe machtigingen goedkeurt.

Chrome 95: Injecteren scripts rechtstreeks in pagina's

geplaatst op

De methode chrome.scripting API's executeScript() kan nu scripts rechtstreeks in de hoofdwereld van een pagina injecteren. Eerder konden extensies alleen rechtstreeks in de geïsoleerde wereld van de extensie injecteren. Zie de documentatie over content scripts voor meer informatie over geïsoleerde werelden.

Chrome 95: Promise Support for Storage API

geplaatst op

Methoden op de manifest V3 -versie van de chrome.storage API retourneren nu beloften.

Beleidsupdate: handhaving van twee stappenverificatie

geplaatst op

Het Beleid Update -blogpost gepubliceerd op 29 juni 2021 is bijgewerkt om de tijdlijn van de twee stappenverificatie te corrigeren.

Chrome 94: Declarative Net Request Statische regelsetwijzigingen

geplaatst op

De chrome.declarativeNetRequest ondersteunt nu het opgeven van maximaal 50 statische regelsets ( max_number_of_static_rulesets ) en het inschakelen van maximaal 10 regelsets ( max_number_of_enabled_static_rulesets ) op een tijdstip.

Chrome 93: Ondersteuning van kruising isolatie

geplaatst op

Zowel manifest V2- als manifest V3 -extensies kunnen nu kiezen voor kruising isolatie . Deze functie beperkt welke cross-origin bronnen de pagina's van een extensie kunnen laden en maakt het gebruik van lage webplatformfuncties zoals SharedArrayBuffer mogelijk. Opt -in is vereist vanaf Chrome 95.

Beleidsupdate: beleid voor ontwikkelaarsprogramma's bijgewerkt

geplaatst op

Het beleid van het Chrome Web Store Developer Program is bijgewerkt met opheldering van de misleidende installatietactieken, spam en repetitieve inhoudsbeleid. Deze update bevat ook een nieuwe vereiste voor twee stappen om te publiceren in de Chrome Web Store. Lees het blogbericht voor meer informatie.

Blogbericht: uitbreidingsacties in manifest V3

geplaatst op

Chrome -extensies hadden chrome.browserAction en chrome.pageActions API's al jaren, maar manifest V3 vervangen beide door een generiek chrome.actions API. Dit bericht onderzoekt de geschiedenis van deze API's en wat is veranderd in manifest V3. Lees het bericht .

Blogbericht: Introductie van Chrome.Scripting

geplaatst op

De chrome.scripting API is een nieuwe manifest V3 API gericht op, nou ja, scripting. In dit bericht graven we in de motivaties voor deze verandering en bekijken we de nieuwe mogelijkheden van de nieuwe mogelijkheden. Lees het bericht .

Chrome 92: Module Service Worker Support

geplaatst op

Chrome ondersteunt nu JavaScript -modules bij servicemedewerkers. Om een ​​module een module in uw manifest op te geven:

"background": {
  "service_worker": "script.js",
  "type": "module"
}

Dit laadt het werkerscript als een ES -module, waarmee u het import -trefwoord in het script van de werknemer kunt gebruiken om andere modules te importeren.

Chrome 91: Chrome.Action.GetUsersettings ()

geplaatst op

De methode nieuwe chrome.action.getUserSettings() maakt uitbreidingen mogelijk om te bepalen of de gebruiker de extensie op de hoofdwerkbalk heeft vastgemaakt.

Chrome 90: Chrome.Scripting.Removecss ()

geplaatst op

Met de methode nieuwe chrome.scripting.removeCSS() kunnen extensies CSS verwijderen die eerder is ingevoegd via chrome.scripting.insertCSS() . Het vervangt chrome.tabs.removeCSS() .

Chrome 90: Returning beloften van scripting.executescript ()

geplaatst op

chrome.scripting.executeScript() ondersteunt nu retournerende beloften. Als de resulterende waarde van de scriptuitvoering een belofte is, zal Chrome wachten tot de belofte zich vestigt en de resulterende waarde retourneert.

Chrome 90: chrome.scripting.executescript () Resultaten omvatten frameID

geplaatst op

Resultaten geretourneerd van chrome.scripting.executeScript() omvatten nu de frameID . De eigenschap frameId geeft het frame aan dat het resultaat afkomstig is, waardoor extensies de resultaten eenvoudig kunnen associëren met de afzonderlijke frames bij het injecteren in meerdere frames.

Chrome 89: Nieuwe API voor het beheren van tab -groepen

geplaatst op

The New chrome.tabGroups API en nieuwe mogelijkheden in chrome.tabs laten extensies Tab -groepen lezen en manipuleren. Vereist manifest V3.

Chrome 89: aanpasbare machtigingen voor webtoegankelijke bronnen

geplaatst op

Definities van webtoegankelijke bronnen in manifest V3 zijn gewijzigd om extensies de toegang tot de resource te laten beperken op basis van de oorsprong of extensie -ID van de aanvrager.

Blogbericht: Extension Manifest Converter

geplaatst op

Het Chrome Extensions -team heeft open "Extension Manifest Converter", een Python -tool dat enkele van de mechanische aspecten van het converteren van extensies automatiseert om V3 te manifesteren. Zie het blogbericht van de aankondiging en haal het van GitHub .

Chrome 88: Manifest V3 Algemene beschikbaarheid

geplaatst op

Manifest V3 is een belangrijke update voor het extensiesplatform; Zie overzicht van manifest V3 voor een samenvatting van nieuwe en gewijzigde functies. Extensies kunnen voorlopig manifest V2 blijven gebruiken, maar dit zal in de nabije toekomst worden afgebouwd. We raden u ten zeerste aan om manifest V3 te gebruiken voor nieuwe extensies en begint met het migreren van bestaande extensies om V3 zo snel mogelijk te manifesteren.

,

Controleer deze pagina vaak om meer te weten te komen over wijzigingen in Chrome Extensions, Extensions -documentatie of gerelateerd beleid of andere wijzigingen. U vindt andere kennisgevingen die zijn geplaatst op de extensies Google Group . Het Chrome -schema geeft een overzicht van stabiele en bèta -releasedata.

Video: Trust & Safety Team Interview

geplaatst op

Het Chrome Extensions Devrel -team ging zitten bij het Trust & Safety Team dat beoordeling leidt in de Chrome Web Store om uw vragen te stellen. Bekijk de volledige video

Blogbericht: Manifest V2-uitfasering begint

geplaatst op

Vanaf 3 juni op de Chrome Beta-, Dev- en Canarische -kanalen, als gebruikers nog steeds manifeste V2 -extensies hebben geïnstalleerd, beginnen sommige een waarschuwingsbanner te zien bij een bezoek V2) extensies die ze hebben geïnstalleerd, worden binnenkort niet langer ondersteund. Lees meer in de officiële aankondiging

Updates voor de gebruikersinterface op het zijpaneel

geplaatst op

We hebben onlangs enkele wijzigingen aangebracht in de gebruikersinterface van het zijpaneel, inclusief het toevoegen van een pin -pictogram en het verwijderen van het globale zijpaneelpictogram. Lees meer in de PSA en bekijk onze bijgewerkte documentatie en voorbeelden .

Blogpost: Chrome-extensies op Google I/O 2024

geplaatst op

Er ligt weer een Google I/O achter de rug en we hebben alle spannende extensie-updates besproken! Ga naar YouTube om de volledige video te bekijken en onze blogpost te lezen voor enkele hoogtepunten.

Skip Review voor in aanmerking komende declaratieve netverzoekwijzigingen

geplaatst op

Met de Chrome Web Store kunt u nu beoordeling overslaan voor in aanmerking komende wijzigingen bij het gebruik van de declaratieve NET -aanvraag -API. Meer informatie over geschiktheid en hoe u zich kunt aanmelden in de documentatie van Chrome Web Store .

DeployPerCentage beschikbaar in de Chrome Web Store API

geplaatst op

We hebben onlangs onze Chrome Web Store API -documentatie bijgewerkt om informatie op te nemen over deployPercentage , waarmee u een percentage van een gedeeltelijke uitrol -implementatie kunt toewijzen. Meer informatie over deployPercentage .

Chrome 126: Origin Trials in Extensions

geplaatst op

Chrome 126 introduceert een nieuw manifest.json -veld - trial_tokens , zodat u zich kunt aanmelden voor oorsprongstroeven en afschrijvingen op alle uitbreidingsoppervlakken. Lees de gids voor meer informatie.

Blogbericht: wat gebeurt er in Chrome Extensions-april 2024

geplaatst op

We hebben een nieuwe editie gepubliceerd van wat er gebeurt in Chrome Extensions . De post bespreekt waar het extensieteam de afgelopen maanden aan heeft gewerkt. Dit omvat: versie -terugdraaien in de Chrome Web Store, betere ondersteuning voor Firebase Auth en meer API -lanceringen en -updates.

Versie terugdraaien in het Chrome Web Store-ontwikkelaarsdashboard

geplaatst op

Rol uw uitbreiding terug naar de vorige gepubliceerde versie in de Chrome Web Store - zonder extra recensie! Lees de blogpost en documentatie voor meer informatie.

Chrome 124: Geavanceerde documentencan API

geplaatst op

Een geavanceerde documentScan API is nu beschikbaar op ChromeOS om afbeeldingen te ontdekken en op te halen van bijgevoegde documentscanners.

Chrome 124: WebGPU -ondersteuning bij servicemedewerkers

geplaatst op

Sinds Chrome 124 ondersteunen servicemedewerkers WebGPU . Bekijk het WebGPU -extensie -voorbeeld voor een snelle start.

Chrome 123: De Events API ondersteunt filtering door CIDR -blokken

geplaatst op

De Events API ondersteunt nu filtering door klasseloze interdomein routing (CIDR) blokken. Een CIDR -blok is een verzameling IP -adressen die een netwerkvoorvoegsel en hetzelfde aantal bits delen. Eerder moet een ontwikkelaar die meerdere IP -adressen filteren die nodig zijn om een ​​filterregel te configureren voor elk van de adressen in het blokbereik. Wanneer een extensie addListener() oproept, betekent een doorgegeven in regel dat de gebeurtenishandler alleen wordt opgeroepen wanneer het hostgedeelte van een URL een IP -adres is en is opgenomen in een van de CIDR -blokken die in een array zijn gespecificeerd.

Chrome Web Store: Updates voor verlengingsnaamlengte Vereisten

geplaatst op

In de Chrome Web Store is er nu een universele limiet van 75 tekens voor het veld "name" van een extensie in de manifest.json. Voorheen was de limiet voor het Engels 45 tekens en was er geen beperking op het veld "name" op andere locaties.

Dit was oorspronkelijk bedoeld om culturele en taalverschillen mogelijk te maken die mogelijk niet in hetzelfde aantal karakters kunnen worden vastgelegd. Helaas werd deze functie misbruikt door een klein aantal ontwikkelaars om de winkel te spammen. Als gevolg hiervan introduceren we een nieuwe universele limiet, een toename tot 75 tekens. Deze limiet omvat vandaag bijna alle extensies in de winkel, dus het is waarschijnlijk dat u geen actie nodig heeft als gevolg van deze wijziging. Als u probeert een extensie te uploaden met een naam langer dan de maximale limiet, wordt de upload door de winkel geblokkeerd.

Blogbericht: Eyeo's Journey to Testing Service Worker Suspension

geplaatst op

In dit bericht per Eyeo's Extension Engine Team onderzoeken we het probleem van het testen van extensieservice -werknemers. In manifest V2 leefden extensies op een achtergrondpagina, die tijdens de levenscyclus van de extensie wakker waren. Manifest V3 gebruikt in plaats daarvan servicewerkers, en servicemedewerkers, door ontwerp, behouden resource door af te sluiten wanneer ze niet nodig zijn. Dit biedt bepaalde testuitdagingen. Dit bericht legt uit hoe Eyeo deze uitdagingen heeft aangepakt .

Chrome 123: Alarmen worden nu uitgevoerd wanneer het apparaat slaapt

geplaatst op

Alarmen ingesteld met behulp van de chrome.alarms API worden niet langer vertraagd wanneer een apparaat in slaap gaat. Wanneer het apparaat wakker wordt, wordt het alarm afgezet, ongeacht hoeveel alarmen zijn gemist. Zeg bijvoorbeeld dat er een alarm is ingesteld om eenmaal per uur af te gaan en het apparaat dat het bevindt, slaapt van 12:55 uur tot 02.05 uur, dan alleen het alarm van 2:00 uur activeert het onAlarm -evenement. Het zal zo dicht mogelijk bij 2:00 AM vuren, en onmiddellijk wanneer een apparaat wakker wordt als het sliep.

Deze verandering brengt Chrome Inline met het overeengekomen gedrag in de Web Extensions Community Group.

Blogbericht: wijzigingen in BFCache -gedrag met extensieberichtpoorten

geplaatst op

Back/Forward Cache (BFCache) is een browseroptimalisatie die onmiddellijk terug en vooruit navigatie mogelijk maakt. Beginnend in Chrome 123, wanneer een pagina met een open extensiepoort wordt opgeslagen in BFCache, is het berichtkanaal gesloten, wat betekent dat er geen berichten naar die pagina worden verzonden. Bijgevolg moeten extensiescripts luisteren naar levenscyclusgebeurtenissen zoals onDisconnect en een nieuwe verbinding instellen wanneer de pagina wordt hersteld vanuit BFCache.

Zie wijzigingen in BFCache -gedrag voor meer informatie en voorbeeldcode met extensieberichtpoorten .

Chrome 122: Promise Support on Asynchrone Extension API's

geplaatst op

We zijn klaar met het implementeren van belofteondersteuning voor alle asynchrone extensie API -methoden. Dit werd gedaan om API -methoden te moderniseren door de ergonomie van het omgaan met asynchrone operaties te verbeteren. Een handvol methoden (bijvoorbeeld desktopCapture.chooseDesktopMedia() ) blijven alleen callbacks ondersteunen omdat hun huidige oppervlakken niet compatibel zijn met beloften. Voor achterwaartse compatibiliteit worden callbacks nog steeds ondersteund. Als u een belofte vindt die mislukt, dient u een bug in .

Nieuwe begeleiding voor realtime communicatie

geplaatst op

We hebben zojuist gidsen gepubliceerd over realtime -opties in extensies. Real-time updates bieden een direct communicatiepad van uw servers rechtstreeks naar uw extensie-installaties. Bovendien hebben we nieuwe richtlijnen voor het gebruik van chrome.gcm , web push .

Nieuwe richtlijnen en steekproef: beëindiging van de servicemedewerker testen

geplaatst op

We hebben zojuist een gids gepubliceerd over het testen van de beëindiging van de dienstverlener met poppenspeler . Het bijbehorende monster demonstreert dit in poppenspeler en selenium.

Bijgewerkt voorbeeld voor native berichten

geplaatst op

We hebben zojuist een bijgewerkt voorbeeld gepubliceerd voor native berichten. Met deze API kan uw extensie beginnen en communiceren met een andere applicatie. Dankzij GitHub-medewerker Shubham-Rasal voor het werk hieraan.

Chrome 121: Nieuwe laatste eigenschap op tabs.tab

geplaatst op

Een nieuwe eigenschap genaamd lastAccessed is toegevoegd aan het tabs.Tab -object. Deze eigenschap geeft aan wanneer het tabblad voor het laatst is geactiveerd. De geretourneerde waarde is in milliseconden sinds Epoch.

Chrome 121: Niet -ondersteunde "achtergrond" sleutels geven nu een waarschuwing uit

geplaatst op

In de verandering van manifest V2 naar manifeste V3, werden kinderen van de "background" manifeste sleutel gewijzigd om vervanging van achtergrondscripts door extensieservice -werknemers aan te gaan. Vroeger zou het toevoegen van de manifest V2 -toetsen "scripts" , "page" of "persistent" aan de "background" -sleutel van een manifest V3 -extensie een fout gooien. De aanwezigheid van deze toetsen veroorzaakt nu een waarschuwing.

Dit wordt gedaan om het gebruik van een enkel manifestbestand in extensies in meerdere browsers mogelijk te maken, volgens een voorstel in de gemeenschapsgroep .

Chrome 120: Minimale alarmkorreligheid verlaagd tot 30 seconden

geplaatst op

Beginnend in Chrome 120, kunnen manifest V3 -extensies de chrome.alarms API gebruiken met vertragingen of periodes van 30 seconden, in plaats van waarden van 60 seconden of meer te vereisen.

Blogbericht: de overgang hervatten naar manifest V3

geplaatst op

De manifest V2 -ondersteuningstijdlijn is bijgewerkt. Zie onze blogbericht van november 2023 voor meer informatie.

Blogbericht: verbeteringen in ondersteuning voor inhoud filteren in manifest V3

geplaatst op

Meer informatie over hoe we de DeclarativenTeRequest API hebben verbeterd in onze nieuwe blogpost .

Blogbericht: wat is er nieuw in Chrome 120 voor extensies

geplaatst op

Chrome 120 Beta is onlangs uitgebracht. Lees onze nieuwe blogpost voor een samenvatting van de belangrijke updates die relevant zijn voor extensieontwikkelaars: wat is er nieuw in Chrome 120 voor extensies . Deze release markeert ook een belangrijke mijlpaal omdat het de laatste twee items (Userscripts, File Handler op ChromeOS) verwijdert uit de lijst met kritieke platformhiaten .

PSA: wijziging in de behandeling van het privacybeleid -URL's in Develer Dashboard

geplaatst op

Het privacybeleid in het Develer -dashboard wordt nu toegevoegd op itemniveau. Hiermee kunt u een ander privacybeleid per item bieden. Lees meer over deze verandering in onze PSA .

Video: een chat met Matt Frisbie

geplaatst op

We hebben zojuist een nieuwe video gepubliceerd op het Chrome voor ontwikkelaars YouTube -kanaal die chat met Google Developer Expert en auteur Matt Frisbie. Bekijk het hier .

Nieuwe richtlijnen bij het testen van extensies

geplaatst op

We hebben zojuist nieuwe richtlijnen gepubliceerd over het schrijven van geautomatiseerde tests voor extensies, waaronder het schrijven van eenheidstests en zowel algemene begeleiding als een tutorial over end-to-end testen.

Blogbericht: wat gebeurt er in Chrome Extensions - oktober 2023

geplaatst op

We hebben zojuist de tweede editie gepubliceerd van wat er gebeurt in Chrome Extensions . De post bespreekt waar het extensieteam de afgelopen maanden aan heeft gewerkt, inclusief het aanpakken van stabiliteitsproblemen van servicemedewerkers en het goede vooruitgang boeken bij het sluiten van alle MV3 -platformlocaties. We delen ook spannende aankomende API -releases zoals de leeslijst API en de gebruikerscripts API.

Verhoogde statische regelsetlimieten in declaratief netto verzoek API

geplaatst op

Na feedback in de communitygroep Web Extensions verhogen we de limiet voor ingeschakelde statische regelsets aanzienlijk van 10 tot 50. Bovendien verhogen we het totale aantal toegestane statische regelsets van 50 tot 100. Dit is momenteel beschikbaar in Canary.

Verbeterde richtlijnen rond op afstand gehost code

geplaatst op

Een vereiste voor manifest V3 is dat extensies mogelijk niet langer op afstand worden gebruikt. Hoewel dit vanaf het begin deel uitmaakte van onze migratiegids , dachten we dat het de moeite waard was om de begeleiding rond deze kwestie te verbeteren. Die pagina biedt nu meer informatie, die beschrijft wat nog steeds mogelijk is in manifest V3 en meer informatie verstrekken over strategieën voor upgraden.

Er is een gerelateerde toevoeging aan het oplossen van problemen met het oplossen van problemen met Chrome . Een nieuwe sectie beschrijft veel voorkomende redenen dat extensies met op afstand gehost code worden afgewezen.

Chrome 118: isurlfilterCaseSgevoelig nu standaard in False

geplaatst op

Beginnend in Chrome 118 is de isUrlFilterCaseSensitive eigenschap in de Chrome.DeclarativenTeRequest API gewijzigd in standaard in false . Als u het oude gedrag wilt behouden, kunt u expliciet isUrlFilterCaseSensitive instellen voor true in uw DeclarativenTeTrequest -regels.

Dit volgt op discussies in de Web Extensions Community Group. Firefox en Safari hebben al een vergelijkbare wijziging geïmplementeerd.

Documentatie over cookies en webopslag API's

geplaatst op

We hebben een nieuwe gids gepubliceerd over hoe cookies en webopslag -API's werken in Chrome Extensions . Het bevat details over wijzigingen in cookie- en opslagpartitionering in de privacy-sandbox , een doorlopend project om cookies van derden af ​​te schrijven door het maken van een reeks nieuwe webplatform-API's en details over hoe ze in extensies werken.

Uitbreidingsmonsters nu doorzoekbaar

geplaatst op

We hebben onlangs een pagina gemaakt waarmee u Chrome Extension -voorbeelden kunt zoeken . De zoekpagina heeft meerdere opties. Met een zoekvak kunt u zoeken naar tekst in voorbeeldtitels. U kunt de zoekopdracht beperken met toestemming of verlenging API. Met een extra filter kunt u de zoekopdracht beperken tot API- of functionele (use case) monsters.

Deze nieuwe voorbeeldpagina werd gebouwd door een Google Summer of Code -deelnemer, Xuezhou Dai, die ook verschillende nieuwe monsters heeft bijgedragen. Je kunt afgelopen zomer over hun ervaringen lezen in hun bericht op onze blog .

Zoals eerder zijn onze codevoorbeelden nog steeds beschikbaar op GitHub voor klonen of vork.

Chrome 118: Wijzigingen in openingsbestand: SCHEMAAL URL's

geplaatst op

Beginnend in Chrome 118, hebben extensies de instelling "Toegang toestaan ​​tot bestands -URL's" ingeschakeld vanuit de pagina chrome://extensions om bestand te openen: // Schema -URL's met behulp van de tabbladen of Windows API's. U kunt programmatisch controleren op deze toegang door te bellen naar chrome.extension.isAllowedFileSchemeAccess() . Firefox beperkt al bestands -URL's en Safari ondersteunt de wijziging. Lees voor meer informatie het bericht in de extensies Google Group .

Chrome 117: uitgebreide URL -bescherming op extensie API -navigaties

geplaatst op

Eerder navigatie geactiveerd vanuit Extension API vereist tabs.update() , tabs.create() en windows.create() emitteerden een fout voor sommige chrome: // urls. Bovendien was het aanroepen van tabs.update() met een JavaScript -URL verboden. In 117 zijn deze bescherming op JavaScript -URL's uitgebreid naar de methode tabs.create() en een aantal extra chrome: // URL's zijn toegevoegd aan de lijst met verboden URL's die van toepassing zijn op alle eerder genoemde methoden.

Verbeterde richtlijnen voor de declarativenetRequest API

geplaatst op

De API -blokken chrome.declarativeNetRequest API -blokkeert of wijzigt netwerkverzoeken door declaratieve regels op te geven. Hierdoor kunnen extensies netwerkverzoeken wijzigen zonder deze te onderscheppen en hun inhoud te bekijken, waardoor gebruikers meer privacy bieden. Het is ook lastig te gebruiken. Met dat in gedachten hebben we de begeleiding herschreven op een manier waarvan we denken dat we een duidelijker beeld schetsen van hoe declaratieve regelsets te implementeren. Lees de nieuwe sectie op de bovenstaande link.

Met behulp van uw Google Analytics -account bij de Chrome Web Store

geplaatst op

De Chrome Web Store biedt integratie met Google Analytics, waarmee u analyse kunt zien voor uw Chrome Web Store -lijst naast de weergave die wordt aangeboden in het Developer Dashboard. Lees voor meer informatie met behulp van uw Google Analytics -account bij de Chrome Web Store .

Chrome 115: DevTools stapt standaard over content scripts

geplaatst op

Geïnjecteerde content -scripts staan ​​nu standaard in de DevTools Negeer List. Dit heeft geen invloed op de breekpunten, maar het betekent wel dat inhoudscripts tijdens het debuggen worden overgevoerd en dat uitzonderingen van deze scripts zullen worden genegeerd. Wanneer een contentscript op het tabblad Sources is geopend, waarschuwt een banner u als dit is ingeschakeld en biedt het een optie om uw inhoudscript uit de lijst negeren te verwijderen. Om dit gedrag uit te schakelen, open Devtools, ga naar de instellingen en negeer vervolgens de lijst . Kijk voor meer informatie wat er nieuw is in Devtools .

Chrome 116 Beta: Meer dan we hier kunnen passen

geplaatst op

Chrome 116 is een grote release voor extensies. U kunt nu programmatisch zijpanelen openen. Met een nieuwe methode kunt u leren of er een actief offscreen -document is. Service -werknemers hebben serverale verbeteringen gekregen. Er zijn genoeg verbeteringen in 116 dat we een blogbericht hebben geschreven om ze te dekken . Chrome 116 is in bèta vanaf 19 juli.

Blogbericht: wat gebeurt er in Chrome Extensions

geplaatst op

We hebben zojuist een overzicht gepubliceerd van de wijzigingen en verbeteringen van dit jaar in extensies . De post bespreekt de grote nieuwe functies van het jaar, waaronder de Side Panel API, serviceworker -verbeteringen en offscreen documenten. Je krijgt ook een kijkje in waar we voor dit kwartaal aan werken. Het artikel vermeldt veel meer, met links naar iedereen.

Nieuwe begeleiding en voorbeeld: leer hoe u Google Analytics 4 kunt gebruiken in uw Chrome -extensie

geplaatst op

We hebben nieuwe Google Analytics and Geolocation Guidance and Samples gepubliceerd:

Chrome 115: Specificeer meerdere redenen in chrome.offscreen.createdocument ()

geplaatst op

U kunt nu meerdere reason enums opgeven bij het bellen van chrome.offscreen.createDocument() . Gebruik dit wanneer een offscreen -document voor meerdere verschillende doeleinden wordt gebruikt. De browser gebruikt de geleverde redenen om de levensduur van het offscreen -document te bepalen.

NIEUW TROOL: Extension Update Testing Tool

geplaatst op

We hebben zojuist de tool voor extensie -update -tests , een lokale extensie -updateserver uitgebracht die kan worden gebruikt voor het testen van updates van Chrome -extensies tijdens de lokale ontwikkeling, inclusief toestemmingsbeurzen. De tool toont de updatevroom van de gebruiker, inclusief het uitharding van een extensie totdat een gebruiker eventuele nieuw gevraagde machtigingen verleent. Deze tool is met name handig voor het simuleren van de gevraagde toestemmingsveranderingen bij het bijwerken van een extensie van manifest V2 om V3 te manifesteren.

Chrome 114: Nieuw zijpaneel API

geplaatst op

Introductie van de nieuwe API van het zijpaneel, een bijbehorende oppervlak waarmee gebruikers toegang hebben tot tools naast de inhoud die ze browsen. Ga voor meer informatie naar de API -referentie bij het zijpaneel . Daarnaast hebben we veel soortenpaneelmonsters toegevoegd aan onze GitHub -voorbeeldrepository . We delen ook meer over zijpanelen in de nieuwe blogpost die een superieure gebruikerservaring ontwerpt met de nieuwe Side Panel API . Ons beleid voor kwaliteitsrichtlijnen en best practices zijn ook herzien om verdere richtlijnen te bieden bij het creëren van hoogwaardige zijpaneelverlengingen.

Uw feedback is belangrijk bij het maken van deze API; Deel uw gedachten en functieverzoeken in de chroomgroepen . Blijf op de hoogte voor nieuwe updates terwijl we de API van het zijpaneel blijven verbeteren.

Nieuwe monsters: wasme in extensies

geplaatst op

Er zijn twee nieuwe monsters beschikbaar die aantonen hoe u de wasme in een extensie kunt gebruiken:

Speciale dank aan GitHub -medewerker @daidr voor deze voorbeelden.

Bijgewerkte manifest V3 -migratierichtlijnen

geplaatst op

We hebben het bekende probleem van onze manifest V3 -migratierichtlijnen bijgewerkt met een bijgewerkte lijst met uitbreidingsplatformhiaten die we van plan zijn te sluiten voordat een nieuwe manifest V2 -afschrijvingstijdlijn wordt aangekondigd.

Audio en video opnemen met manifest V3

geplaatst op

We hebben zojuist een nieuw artikel gepubliceerd genaamd Audio Recording and Screen Capture , dat betrekking heeft op het opnemen van audio of video van een tabblad, venster of scherm in manifest V3. Dit artikel beschrijft meerdere benaderingen van opnames met betrekking tot de chrome.tabCapture API en de functie getDisplayMedia() .

Chrome 114: Verhoogde opslag. Locaal quota

geplaatst op

We hebben het quotum voor de storage.local verhoogd. Locale eigenschap tot ongeveer 10 MB. Dit werd overeengekomen in de Web Extensions Community Group . Dit brengt storage.local in lijn met storage.session die is gewijzigd in Chrome 112.

Nieuwe extensieservice -medewerker tutorial en hulp

geplaatst op

Servicewerkers zijn een integraal onderdeel van Chrome -extensies. We hebben zojuist een tutorial gepubliceerd waarin de basisprincipes worden uitgelegd van het registreren, debuggen en communiceren met servicemedewerkers. We hebben ook een nieuwe Service Worker Guide toegevoegd waarin belangrijke concepten meer gedetailleerd zijn uitgelegd. We zullen dit gedeelte de komende maanden uitbreiden.

Meer tips voor het oplossen van problemen voor webwinkelovertredingen

geplaatst op

Om te helpen met het publiceren van Chrome Web Store, hebben we nieuwe begeleiding op twee gebieden toegevoegd. Richtlijnen voor minimale functionaliteitscentra rond het bieden van gebruikers voordelen en het verrijken van hun browse -ervaring. Richtlijnen voor aangesloten advertenties gaat over het maken van gebruikers op de hoogte zijn van extensies met behulp van affiliatielinks of codes voor het genereren van inkomsten, en hen een aantal controle te geven door gebruikersactie te vereisen vóór opname.

Nieuwe instructies voor de extensie -manifest converter

geplaatst op

We hebben de README herschreven voor de Extension Manifest Converter om het gemakkelijker te maken om te zien wat u moet doen na het uitvoeren van de tool. De converter helpt bij het migreren van extensies gebouwd op manifest V2 om V3 te manifesteren. De nieuwe README beschrijft wat de tool doet met behulp van woorden die nauw overeenkomen met die in de checklist van de migratiegids . De converter doet niet alles, maar het elimineert wel veel taken die geen menselijk oordeel vereisen.

Chrome 113: Nieuwe redenen voor offscreen -documenten

geplaatst op

We hebben twee nieuwe redentypen toegevoegd aan de offscreen -documenten API. Gebruik LOCAL_STORAGE voor toegang tot de LocalStorage API van het webplatform. Gebruik WORKER bij het maken van webwerkers.

Google Analytics 4 nu in het Developer Dashboard

geplaatst op

Het Chrome Web Store -ontwikkelaar Dashboard ondersteunt nu Google Analytics 4 (GA4). We hebben het opzetten van Google Analytics vereenvoudigd en toegangsmanagement gemaakt voor groepsuitgevers eenvoudiger. Als u eerder Google Universal Analytics hebt gebruikt om uw winkelslijstactiviteiten bij te houden, moet u vóór 1 juli 2023 actie ondernemen om ervoor te zorgen dat u gegevens over uw winkellijst blijft ontvangen. Zie het bericht over de Google Group van Chromium Extensions voor meer informatie.

De bestandsbehandeling API komt naar Chromeos

geplaatst op

De File Handler API is beschikbaar voor experimenten op ChromeOS in Canary voor versies 112 en 113. Het laat extensies op ChromeOS -open bestanden met opgegeven mime -typen en bestandsuitbreidingen. Om bestandsbehandeling te implementeren, voegt u een set regels toe aan de manifest.json . Deze functie werkt hetzelfde als voor progressieve web -apps. Zie het artikel elders op deze site voor meer informatie.

Om bestandsbehandeling mogelijk te maken:

  • Begin in 112, start Chrome met de vlag van de --enable-features=ExtensionWebFileHandlers , beginnend in 112
  • Begin in 113, plak os://flags/#extension-web-file-handlers in de Chrome Omnibox en selecteer 'Ingeschakeld' in het vervolgkeuzemenu.

We hopen deze functie eind juni in Chrome 115 te lanceren. Houd deze ruimte in de gaten voor updates.

Nieuwe monsters: dynamische verklaringen en programmatische injectie

geplaatst op

We hebben een nieuw monster gebouwd voor de chrome.scripting API. Het toont dynamische verklaringen, waarbij een inhoudscript wordt geregistreerd tijdens runtime en programmatische injectie, waarbij een script wordt uitgevoerd in een tabblad dat al is geopend.

Nieuwe monsters: declaratieve netto aanvraaggebruiksgevallen

geplaatst op

Er zijn drie nieuwe monsters beschikbaar die de declaratieve NET -aanvraag API aantonen. Elk toont de implementatie van een enkele use case. De eerste laat zien hoe je cookies kunt blokkeren. De resterende twee demonstreren blokkerende en omleidings -URL's.

Chrome 112: Verhoogde opslag. Sessiequota

geplaatst op

Van Chrome 112 is het quotum voor de storage.session Session -eigenschap verhoogd tot ongeveer 10 MB. Dit werd overeengekomen in de Web Extensions Community Group: https://github.com/w3c/webextensions/issues/350

Chrome 109: Offscreen -documenten

geplaatst op

Offscreen -documenten zijn nu beschikbaar in manifest V3 -extensies. Deze helpen bij de overgang van achtergrondpagina's naar extensiedienstmedewerkers door ondersteuning te bieden voor DOM-gerelateerde functies en API's. Lees voor meer informatie het blogbericht .

Chrome 110: is een extensie ingeschakeld

geplaatst op

De methode chrome.action.isEnabled() controleert programmatisch of een extensie is ingeschakeld voor een specifiek tabblad. Dit redt u van het onderhouden van de ingeschakelde status van uw tabbladen. Deze nieuwe methode neemt een TAB -ID en een verwijzing naar een callback en retourneert een Boolean. Het heeft één beperking: tabbladen gemaakt met chrome.declarativeContent Retourneer altijd False.

(De naamruimte van chrome.action heeft onlangs nieuwe methoden gekregen voor het beheersen van het uiterlijk van extensiebadges. Zie voor meer informatie badge -kleuren instellen .)

Chrome 110: Wijziging in time -out van de servicemedewerker

geplaatst op

Voorheen zou een extensiedienstmedewerker vaak worden uitgeschakeld bij de vijf minuten. We hebben dit gedrag veranderd om meer op Service Worker Lifetime op internet te lijken. An extension service worker will be shut down after either thirty seconds of inactivity or if a single activity takes longer than 5 minutes to process. For more information, see Longer extension service worker lifetimes .

Post: Pausing Manifest V2 phase-out

geplaatst op

The Manifest V2 deprecation timelines are under review and the experiments scheduled for early 2023 are being postponed. For more information, read the update in the chromium-extensions Google Group.

Chrome 110: Setting badge colors

geplaatst op

The chrome.action namespace has two new methods to give you more control over the appearance extension badges. The setBadgeTextColor() and getBadgeTextColor() methods allow an extension to change and query its toolbar icon's badge text color. When used with setBadgeBackgroundColor and getBadgeBackgroundColor these new methods let you enforce design and brand consistency.

Blog post: More details on the transition to Manifest V3

geplaatst op

We have clarified the Manifest V2 deprecation timeline . The Manifest V2 support timeline has also been updated to reflect this information.

Docs update: Known issues when migrating to Manifest V3

geplaatst op

We've put together a list of major features currently in development and open bugs . Our goal with this page is to help developers better understand the current state of the platform and what features they can target as they prepare for the future.

Chrome Web Store: "large promo tile" image upload removed

geplaatst op

Chrome Web Store has removed the "large promo tile" upload UI from the item Store Listing tab in the developer dashboard. This change does not affect the end user experience as these images were not used in the consumer UI. See this chromium-extensions post for additional details.

Chrome 106: Allow pages on file:// urls to access web accessible resources

geplaatst op

Opaque origins such as sandboxed iframes and dynamic import should also be able to access web accessible resources, according to crbug.com/1219825#c11 .

Chrome 106: Fixed bug allowing incorrect final arguments on some async API functions

geplaatst op

Previously, Manifest V3 calling async APIs could provide an invalid final argument and Chrome would not error. With this fix Chrome will now correctly error and report that there was no matching signature. Developers are encouraged to check their extensions on Canary for any errors in case they accidentally using incorrect signature for an API call that will be broken by this bug fix.

Blog post: Chrome Web Store analytics revamp

geplaatst op

Chrome Web Store has a revamped item analytics experience for the Chrome Web Store Developer Dashboard. The new dashboard is easier to understand at a glance and consolidates the most useful information up front. Read the blog post for more information.

Chrome 105: promises for the Identity API

geplaatst op

Functions on the Identity API now support promise based calls. This comes with a slight change to the surface for identity.getAuthToken() , where the asynchronous return set to a promise based call will have "token" and "grantedScopes" as parameters on a single object (as opposed to the callback version receiving them as separate arguments to the callback).

Chrome 104: New favicons API for Manifest V3

geplaatst op

Manifest V3 extensions can now access favicons using a new URL pattern: chrome-extension://<id>/_favicon/ , where is the ID of your extension. This replaces the Manifest V2 platform's chrome://favicons API. See the Favicon API docs for more information.

Docs update: Developer trader/non-trader disclosure

geplaatst op

Added the trader/non-trader developer identification that informs developers to accurately self-declare their trader/non-trader status.

Chrome 103: Wasm in Manifest V3 requires wasm-unsafe-eval

geplaatst op

Chrome no longer grants extensions script-src: wasm-unsafe-eval by default. Extensions that use WebAssembly must now explicitly add this directive and value to extension_pages in their content_security_policy declarations.

Chrome 103: Changing MV3 shortcuts take effect immediately

geplaatst op

When changing a Manifest V3 extension's keyboard shortcut on chrome://extensions/shortcuts , updates are now applied immediately. Previously the extension would have to be reloaded before the change would take effect.

Chrome 102: Dynamic content scripts in main world

geplaatst op

Dynamically registered content scripts can now specify the world that assets will be injected into. See scripting.registerContentScripts() for details.

Chrome 102: New manifest field "optional_host_permissions"

geplaatst op

Manifest V3 extensions can now specify the optional_host_permissions key in manifest.json. This allows Manifest V3 extensions to declare optional match patterns for hosts just as Manifest V2 extensions could using the optional_permissions key.

Chrome 102: injectImmediately property in scripting.executeScript()

geplaatst op

chrome.scripting.executeScript() now accepts an optional injectImmediately property on it's injection argument. If present and set to true, the script will inject into the target as soon as possible, rather than waiting for document_idle . Note that this is not a guarantee the script will inject before the page is loaded since the page continues to load while the API call is being made.

Chrome 102: Omnibox API support in Manifest V3

geplaatst op

The Omnibox API can now be used in service worker-based extensions. Previously, some of this API's methods would throw on invocation due to internal dependencies on DOM capabilities.

Chrome 102: wasm-unsafe-eval allowed in Manifest V3 CSP

geplaatst op

Manifest V3 extensions can now include wasm-unsafe-eval in their content_security_policy declarations. This change allows Manifest V3 extensions to use WebAssembly.

Chrome 102: New storage.session API

geplaatst op

Manifest V3 extensions can now use in memory storage storage.session .

Docs update: Chrome Web Store item discovery

geplaatst op

Discovery on Chrome Web Store gives an overview of how users find items on the Chrome Web Store and how our editors select items to feature.

Chrome 101: Improved declarativeNetRequest domain conditions

geplaatst op

declarativeNetRequest rule conditions have been updated to allow extensions to better target requests based on the request's "request" and "initiator" domains. The relevant condition properties are initiatorDomains , excludedInitiatorDomains , requestDomains , and excludedRequestDomains . See also this chromium-extensions thread .

Chrome 100: Resolved issue with scripting.executeScript() on newly created tabs

Fixed a longstanding issue where calling scripting.executeScript() on a newly created tab or window could fail.

Chrome 100: native messaging port keeps service worker alive

geplaatst op

Connecting to a native messaging host using chrome.runtime.connectNative() in an extension's service worker should keep the service worker alive as long as the port is open.

Chrome 100: omnibox.setDefaultSuggestion() supports promises and callbacks

geplaatst op

The omnibox.setDefaultSuggestion() method now returns a promise or accepts a callback to allow developers to determine when the suggestion has been properly set.

Chrome 100: i18n.getMessage() support in extension service workers

geplaatst op

The chrome.i18n.getMessage() API is now supported in extension service worker contexts.

Chrome 99: match_origin_as_fallback in Canary

geplaatst op

Content scripts can now specify the match_origin_as_fallback key to inject into frames that are related to a matching frame, including frames with about: , data: , blob: , and filesystem: URLs. See the content scripts documentation for details.

Chrome 99: extension service worker support for file: schemes in Canary

geplaatst op

Service worker-based Manifest V2 and Manifest V3 extensions can now use the Fetch API to request file: -scheme URLs. Access to file: -scheme URLs still requires that the user enable 'Allow access to File URLs' for the extension in the chrome://extensions page.

Chrome 99: promise support for messaging APIs in Canary

geplaatst op

Promise support has been added to tabs.sendMessage , runtime.sendMessage , and runtime.sendNativeMessage for extensions built for Manifest V3.

Docs update: Chrome Web Store review documentation

geplaatst op

Added a new reference page that provides an overview of the Chrome Web Store review process and explains how developer program policy enforcement is handled.

Chrome 98: scripting.executeScript() and scripting.insertCSS() accept multiple files

geplaatst op

The Scripting API's executeScript() and insertCSS() methods now accept multiple files. Previously these methods required an array with a single file entry.

Docs update: review violation troubleshooting updates

geplaatst op

The Troubleshooting Chrome Web Store violations page has been updated to provide developers with more detailed guidance for common reasons for rejection.

Chrome 96: expanded promise support to 27 more APIs

geplaatst op

This release contains significantly more promise updates than any previous release. Updates include both general and ChromeOS-specific extensions APIs. Expand the following sections for details.

Extensions APIs

A number of APIs now support promises in Manifest V3.

Also, APIs that use the ChromeSetting prototype now also support promises. The following APIs are affected by this change.

ChromeOS APIs

Chrome 96: dynamic content scripts

geplaatst op

The chrome.scripting API now supports registering , updating , unregistering , and getting a list of content scripts at runtime. Previously, content scripts could only be statically declared in an extension's manifest.json or programmatically injected at runtime with chrome.scripting.executeScript() .

Docs update: Manifest V2 support timeline

geplaatst op

The Manifest V2 to V3 transition timeline was announced in this blog post and a more detailed timeline page was published.

Chrome 96: declarativeNetRequestWithHostAccess permission

geplaatst op

The new declarativeNetRequestWithHostAccess permission allows extensions to use the chrome.declarativeNetRequest API on sites the extension has host permissions for. This also enables existing Manifest V2 extensions that use webRequest , webRequestBlocking , and site-specific host permission to migrate to the chrome.declarativeNetRequest API without requiring the user to approve new permissions.

Chrome 95: inject scripts directly into pages

geplaatst op

The chrome.scripting API's executeScript() method can now inject scripts directly into a page's main world. Previously, extensions could only inject directly into the extension's isolated world. For more information on isolated worlds, see the documentation on content scripts .

Chrome 95: promise support for Storage API

geplaatst op

Methods on the Manifest V3 version of the chrome.storage API now return promises.

Policy update: two step verification enforcement

geplaatst op

The policy update blog post published on June 29, 2021 has been updated to correct the two step verification deployment timeline.

Chrome 94: declarative net request static ruleset changes

geplaatst op

The chrome.declarativeNetRequest now supports specifying up to 50 static rulesets ( MAX_NUMBER_OF_STATIC_RULESETS ) and enabling up to 10 rulesets ( MAX_NUMBER_OF_ENABLED_STATIC_RULESETS ) at a time.

Chrome 93: cross origin isolation support

geplaatst op

Both Manifest V2 and Manifest V3 extensions can now opt into cross origin isolation . This feature limits which cross-origin resources can load an extension's pages and enables the use of low level web platform features like SharedArrayBuffer . Opt in will be required starting in Chrome 95.

Policy update: developer program policies updated

geplaatst op

The Chrome Web Store Developer Program Policies have been updated with clarifications to the deceptive installation tactics, spam, and repetitive content policies. This update also includes a new two step verification requirement to publish on the Chrome Web Store. Read the blog post for more information.

Blog post: extension actions in Manifest V3

geplaatst op

Chrome extensions had chrome.browserAction and chrome.pageActions APIs for years, but Manifest V3 replaced both with a generic chrome.actions API. This post explores the history of these APIs and what has changed in Manifest V3. Read the post .

Blog post: introducing chrome.scripting

geplaatst op

The chrome.scripting API is a new Manifest V3 API focused on, well, scripting. In this post we dig into the motivations for this change and take a closer look at it's new capabilities. Read the post .

Chrome 92: module service worker support

geplaatst op

Chrome now supports JavaScript modules in service workers. To specify a module a module in your manifest:

"background": {
  "service_worker": "script.js",
  "type": "module"
}

This loads the worker script as an ES module, which lets you use the import keyword in the worker's script to import other modules.

Chrome 91: chrome.action.getUserSettings()

geplaatst op

The new chrome.action.getUserSettings() method allows extensions to determine if the user has pinned the extension to the main toolbar.

Chrome 90: chrome.scripting.removeCSS()

geplaatst op

The new chrome.scripting.removeCSS() method allows extensions to remove CSS that was previously inserted via chrome.scripting.insertCSS() . It replaces chrome.tabs.removeCSS() .

Chrome 90: returning promises from scripting.executeScript()

geplaatst op

chrome.scripting.executeScript() now supports returning promises. If the resulting value of the script execution is a promise, Chrome will wait for the promise to settle and return its resulting value.

Chrome 90: chrome.scripting.executeScript() results include frameId

geplaatst op

Results returned from chrome.scripting.executeScript() now include the frameId . The frameId property indicates the frame that the result is from, letting extensions easily associate results with the individual frames when injecting in multiple frames.

Chrome 89: new API for managing tab groups

geplaatst op

The new chrome.tabGroups API and new capabilities in chrome.tabs let extensions read and manipulate tab groups. Requires Manifest V3.

Chrome 89: customizable permissions for web accessible resources

geplaatst op

Web accessible resources definitions in Manifest V3 have changed to let extensions restrict resource access based on the requester's origin or extension ID.

Blog post: Extension Manifest Converter

geplaatst op

The Chrome Extensions team has open sourced "Extension Manifest Converter", a Python tool that automates some of the mechanical aspects of converting extensions to Manifest V3. See the announcement blog post and get it from GitHub .

Chrome 88: Manifest V3 general availability

geplaatst op

Manifest V3 is a major update to the extensions platform; see Overview of Manifest V3 for a summary of new and changed features. Extensions may continue to use Manifest V2 for now, but this will be phased out in the near future. We strongly recommend that you use Manifest V3 for any new extensions, and begin migrating existing extensions to Manifest V3 as soon as possible.