Nadat u het gedeelte Aan de slag hebt gelezen, gebruikt u deze handleiding als overzicht van uitbreidingscomponenten, hun mogelijkheden in Manifest V3 en hoe u deze kunt combineren. Maak uzelf eerst vertrouwd met waartoe extensies in staat zijn: Leer vervolgens hoe u deze functies kunt combineren met behulp van de sectie Kernconcepten voor extensies.

Ontwerp de gebruikersinterface

De meeste extensies hebben een bepaalde vorm van gebruikersinteractie nodig om te kunnen werken. Het extensieplatform biedt verschillende manieren om interacties aan uw extensie toe te voegen. Deze methoden omvatten pop-ups die worden geactiveerd vanuit de Chrome-werkbalk, zijpanelen, contextmenu's en meer.
Gebruik de chrome.sidePanel API om inhoud in het zijpaneel van de browser te hosten naast de hoofdinhoud van een webpagina.
Beheer de weergave van het pictogram van een extensie in de werkbalk.
Voeg items toe aan het contextmenu van Google Chrome.

Beheer de browser

De extensie-API's van Chrome maken het mogelijk om de manier te veranderen waarop uw browser werkt.
Het overschrijven van instellingen is een manier waarop extensies geselecteerde Chrome-instellingen kunnen overschrijven. Bovendien kunnen extensies HTML- overschrijvingspagina's gebruiken om een ​​pagina te vervangen die Google Chrome normaal gesproken aanbiedt. Een extensie kan de bladwijzerbeheerder, het tabblad Geschiedenis of het nieuwe tabblad overschrijven.
DevTools-extensies voegen functionaliteit toe aan Chrome DevTools door toegang te krijgen tot DevTools-specifieke extensie-API's via een DevTools-pagina die aan de extensie is toegevoegd. U kunt ook de chrome.debugger API gebruiken om het protocol voor foutopsporing op afstand van Chrome aan te roepen. Voeg toe aan een of meer tabbladen om netwerkinteractie te instrumenteren, JavaScript te debuggen, de DOM te muteren en meer.
Met de chrome.notifications API kunt u meldingen maken met behulp van sjablonen en deze meldingen aan gebruikers weergeven in het systeemvak van de gebruiker.
Gebruik de chrome.history API om te communiceren met de browsergeschiedenis van bezochte pagina's, en de chrome.browsingData API om andere browsegegevens te beheren. Gebruik chrome.topSites om toegang te krijgen tot de meest bezochte sites.
Gebruik API's zoals chrome.tabs , chrome.tabGroups en chrome.windows om de browser van de gebruiker te maken, aan te passen en in te delen.
Gebruik de chrome.commands API om sneltoetsen toe te voegen die acties in uw extensie activeren. U kunt bijvoorbeeld een snelkoppeling toevoegen om de browseractie te openen of een opdracht naar de extensie sturen.
Gebruik de chrome.identity API om OAuth 2.0-toegangstokens te verkrijgen.
De chrome.management API biedt manieren om de lijst met extensies te beheren die zijn geïnstalleerd en actief zijn. Het is vooral handig voor extensies die de ingebouwde Nieuw-tabbladpagina overschrijven.
Met de chrome.omnibox API kunt u een trefwoord registreren bij de omnibox (adresbalk) van Google Chrome.
Gebruik de chrome.privacy API om het gebruik van functies in Chrome te beheren die van invloed kunnen zijn op de privacy van een gebruiker. Zie ook de chrome.proxy API om de proxy-instellingen van Chrome te beheren.
Gebruik de chrome.downloads API om downloads programmatisch te initiëren, controleren, manipuleren en zoeken.
Gebruik de chrome.bookmarks API en de chrome.readingList API om deze lijsten te maken, ordenen en anderszins te manipuleren.

Beheers het internet

Verander dynamisch de inhoud en het gedrag van webpagina's. U kunt het internet beheren en aanpassen door scripts te injecteren, netwerkverzoeken te onderscheppen en web-API's te gebruiken voor interactie met webpagina's.
Inhoudsscripts zijn bestanden die worden uitgevoerd in de context van webpagina's. Ze gebruiken het standaard Document Object Model (DOM) om details te lezen van webpagina's die de browser bezoekt, er wijzigingen in aan te brengen en informatie door te geven aan de bovenliggende extensie.
De machtiging "activeTab" geeft een extensie tijdelijke toegang tot het momenteel actieve tabblad wanneer de gebruiker de extensie aanroept, bijvoorbeeld door op de actie ervan te klikken. De toegang tot het tabblad duurt zolang de gebruiker zich op die pagina bevindt, en wordt ingetrokken wanneer de gebruiker weg navigeert of het tabblad sluit.
Gebruik de API's chrome.declarativeNetRequest , chrome.webRequest en chrome.webNavigation om netwerkverzoeken te observeren, blokkeren en wijzigen.
Leer meer over verschillende benaderingen voor het opnemen van audio en video vanaf een tabblad, venster of scherm met behulp van webplatform-API's zoals chrome.tabCapture of getDisplayMedia() .
Gebruik de chrome.contentSettings API om te bepalen of websites functies zoals cookies, JavaScript en plug-ins kunnen gebruiken. Meer in het algemeen kunt u met de inhoudsinstellingen het gedrag van Chrome per site aanpassen in plaats van globaal.

Hoofdconcepten

Met behulp van webplatform- en uitbreidings-API's kunt u complexere functies bouwen door verschillende UI-componenten en uitbreidingsplatformfuncties te combineren.
Een uitbreidingsservicewerker (service-worker.js) is een op gebeurtenissen gebaseerd script dat de browser op de achtergrond uitvoert. Het wordt vaak gebruikt om gegevens te verwerken, taken in verschillende delen van een extensie te coördineren en als evenementenmanager van een extensie.
Begrijp machtigingen: hoe ze werken en wanneer u er niet om moet vragen als ze niet nodig zijn.
Vaak moeten inhoudsscripts of andere extensiepagina's informatie verzenden of ontvangen van de medewerker van de extensieservice. In deze gevallen kan elke partij luisteren naar berichten die vanaf de andere kant worden verzonden en op hetzelfde kanaal reageren.
Schakel uw extensies in om berichten uit te wisselen met native applicaties.
In Manifest V3 moeten extensies alle code die ze gebruiken in de extensie zelf bundelen. Er zijn verschillende strategieën om dit te doen.
Chrome-extensies hebben een gespecialiseerde opslag-API, beschikbaar voor alle extensiecomponenten. Het bevat vier afzonderlijke opslaggebieden voor specifieke gebruiksscenario's en een gebeurtenislistener die bijhoudt wanneer gegevens worden bijgewerkt.
Servicemedewerkers hebben geen DOM-toegang. Dankzij de Offscreen API kan de extensie DOM API's gebruiken in een verborgen document zonder de gebruikerservaring te onderbreken door nieuwe vensters of tabbladen te openen.
Door cross-origin-isolatie kan een webpagina krachtige functies gebruiken, zoals SharedArrayBuffer . Een extensie kan kiezen voor cross-origin-isolatie door de juiste waarden op te geven voor de manifestsleutels "cross_origin_embedder_policy" en "cross_origin_opener_policy" .