Dopo aver letto la sezione Per iniziare, utilizza questa guida per presentare i componenti dell'estensione, le loro funzionalità in Manifest V3 e come combinarli. Innanzitutto, impara a conoscere quali sono le estensioni in grado di: Poi scopri come combinare queste funzionalità utilizzando la sezione dei concetti principali sulle estensioni.

Progettare l'interfaccia utente

Per funzionare, la maggior parte delle estensioni richiede un qualche tipo di interazione con l'utente. La piattaforma per le estensioni offre diversi modi per aggiungere interazioni alla tua estensione. Questi metodi includono popup attivati dalla barra degli strumenti di Chrome, riquadri laterali, menu contestuali e altro ancora.
Utilizza l'API chrome.sidePanel per ospitare i contenuti nel riquadro laterale del browser insieme ai contenuti principali di una pagina web.
Controlla la visualizzazione dell'icona di un'estensione nella barra degli strumenti.
Aggiungi elementi al menu contestuale di Google Chrome.

Controllare il browser

Le API delle estensioni di Chrome consentono di cambiare il funzionamento del browser.
Gli override delle impostazioni consentono alle estensioni di eseguire l'override delle impostazioni di Chrome selezionate. Inoltre, le estensioni possono utilizzare le pagine di override HTML per sostituire una pagina fornita normalmente da Google Chrome. Un'estensione può sostituire Gestione Preferiti, la scheda Cronologia o la nuova scheda.
Le estensioni DevTools aggiungono funzionalità a Chrome DevTools accedendo alle API di estensioni specifiche di DevTools tramite una pagina DevTools aggiunta all'estensione. Puoi anche utilizzare l'API chrome.debugger per richiamare il protocollo di debug remoto di Chrome. Collegamento a una o più schede per l'interazione con la rete dello strumento, il debug di JavaScript, la modifica del DOM e altro ancora.
L'API chrome.notifications consente di creare notifiche utilizzando modelli e di mostrare queste notifiche agli utenti nella barra delle applicazioni.
Utilizza l'API chrome.history per interagire con il record del browser delle pagine visitate e l'API chrome.browsingData per gestire altri dati di navigazione. Utilizza chrome.topSites per accedere ai siti più visitati.
Utilizza API come chrome.tabs, chrome.tabGroups e chrome.windows per creare, modificare e organizzare il browser dell'utente.
Utilizza l'API chrome.commands per aggiungere scorciatoie da tastiera che attivano azioni nell'estensione. Ad esempio, puoi aggiungere una scorciatoia per aprire l'azione del browser o inviare un comando all'estensione.
Utilizza l'API chrome.identity per ottenere i token di accesso OAuth 2.0.
L'API chrome.management consente di gestire l'elenco delle estensioni installate e in esecuzione. È particolarmente utile per le estensioni che sostituiscono la pagina Nuova scheda incorporata.
L'API chrome.omnibox ti consente di registrare una parola chiave nella omnibox (barra degli indirizzi) di Google Chrome.
Utilizza l'API chrome.privacy per controllare l'utilizzo delle funzionalità di Chrome che possono influire sulla privacy di un utente. Consulta anche l'API chrome.proxy per gestire le impostazioni proxy di Chrome.
Utilizza l'API chrome.downloads per avviare, monitorare, manipolare e cercare i download in modo programmatico.
Utilizza l'API chrome.bookmarks e l'API chrome.readingList per creare, organizzare e manipolare in altro modo questi elenchi.

Controlla il web

Modifica dinamicamente i contenuti e il comportamento delle pagine web. Puoi controllare e modificare il web inserendo script, intercettando le richieste di rete e utilizzando le API web per interagire con le pagine web.
Gli script di contenuti sono file che vengono eseguiti nel contesto delle pagine web. Utilizzano il Document Object Model (DOM) standard per leggere i dettagli delle pagine web visitate dal browser, apportarvi modifiche e passare informazioni all'estensione principale.
L'autorizzazione "activeTab" concede a un'estensione l'accesso temporaneo alla scheda attualmente attiva quando l'utente richiama l'estensione, ad esempio facendo clic sulla sua azione. L'accesso alla scheda permane mentre l'utente è nella pagina in questione e viene revocato quando l'utente esce dalla scheda o la chiude.
Utilizza le API chrome.declarativeNetRequest, chrome.webRequest e chrome.webNavigation per osservare, bloccare e modificare le richieste di rete.
Scopri diversi approcci per registrare audio e video da una scheda, una finestra o uno schermo utilizzando API della piattaforma web come chrome.tabCapture o getDisplayMedia().
Utilizza l'API chrome.contentSettings per controllare se i siti web possono usare funzionalità come cookie, JavaScript e plug-in. Più in generale, le impostazioni dei contenuti consentono di personalizzare il comportamento di Chrome in base al sito anziché a livello globale.

Concetti principali

Utilizzando le API di estensioni e piattaforme web, puoi creare funzionalità più complesse combinando diversi componenti dell'interfaccia utente e funzionalità della piattaforma di estensioni.
Un service worker dell'estensione (service-worker.js) è uno script basato su eventi che il browser esegue in background. Viene spesso utilizzato per elaborare i dati, coordinare le attività in diverse parti di un'estensione e come gestore degli eventi di un'estensione.
Cerca di comprendere le autorizzazioni: come funzionano e quando evitare di chiederle quando non sono necessarie.
Spesso gli script di contenuti o altre pagine di estensioni devono inviare o ricevere informazioni dal service worker delle estensioni. In questi casi, entrambe le parti possono ascoltare i messaggi inviati dall'altro capo e rispondere sullo stesso canale.
Attiva le estensioni per lo scambio di messaggi con applicazioni native.
In Manifest V3 le estensioni devono raggruppare tutto il codice che stanno utilizzando all'interno dell'estensione stessa. Esistono diverse strategie per raggiungere questo obiettivo.
Le estensioni di Chrome dispongono di un'API Storage specializzata, disponibile per tutti i componenti delle estensioni. Include quattro aree di archiviazione separate per casi d'uso specifici e un listener di eventi che tiene traccia di ogni aggiornamento dei dati.
I Service worker non hanno accesso al DOM. L'API Offscreen consente all'estensione di utilizzare le API DOM in un documento nascosto senza interrompere l'esperienza utente aprendo nuove finestre o schede.
L'isolamento multiorigine consente a una pagina web di usare funzionalità avanzate come SharedArrayBuffer. Un'estensione può attivare l'isolamento multiorigine specificando i valori appropriati per le chiavi manifest "cross_origin_embedder_policy" e "cross_origin_opener_policy".