Sviluppo
Dopo aver letto la sezione Inizia, utilizza questa guida come schema dei componenti delle estensioni, delle loro funzionalità e di come combinarli. Innanzitutto, acquisisci familiarità con le funzionalità delle estensioni: Poi scopri come combinare queste funzionalità utilizzando la sezione dei concetti di base delle 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.
Riquadro laterale
Utilizza l'API
browser.sidePanel per ospitare contenuti nel riquadro laterale del browser insieme ai contenuti principali di una pagina web.
Azione
Controlla la visualizzazione dell'icona di un'estensione nella barra degli strumenti.
Menu
Aggiungi elementi al menu contestuale di Google Chrome.
Controllare il browser
Le API delle estensioni di Chrome consentono di cambiare il funzionamento del browser.
Eseguire l'override delle pagine e delle impostazioni di Chrome
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.
Estensione di DevTools
Le estensioni DevTools aggiungono funzionalità a Chrome DevTools accedendo alle API di estensione specifiche di DevTools tramite una pagina DevTools aggiunta all'estensione. Puoi anche utilizzare l'API
browser.debugger per richiamare il protocollo di debug remoto di Chrome. Esegui il collegamento a una o più schede per instrumentare l'interazione di rete, eseguire il debug di JavaScript, modificare il DOM e altro ancora.
Mostra notifiche
L'API
browser.notifications ti consente di creare notifiche utilizzando modelli e di mostrarle agli utenti nella barra delle applicazioni.
Gestisci cronologia
Utilizza l'API
browser.history per interagire con il record delle pagine visitate del browser e l'API browser.browsingData per gestire altri dati di navigazione. Utilizza browser.topSites per accedere ai siti più visitati.
Controllare schede e finestre
Utilizza API come
browser.tabs, browser.tabGroups e browser.windows per creare, modificare e organizzare il browser dell'utente.
Aggiungi scorciatoie da tastiera
Utilizza l'API
browser.commands per aggiungere scorciatoie da tastiera che attivano azioni nella tua estensione. Ad esempio, puoi aggiungere una scorciatoia per aprire l'azione del browser o inviare un comando all'estensione.
Autenticazione degli utenti
Utilizza l'API
browser.identity per ottenere i token di accesso OAuth 2.0.
Gestisci le estensioni
L'API
browser.management fornisce modi per gestire l'elenco delle estensioni installate e in esecuzione. È particolarmente utile per le estensioni che sostituiscono la pagina Nuova scheda integrata.
Fornisci suggerimenti
L'API
browser.omnibox consente di registrare una parola chiave con la omnibox (barra degli indirizzi) di Google Chrome.
Aggiorna le impostazioni di Chrome
Utilizza l'API
browser.privacy per controllare l'utilizzo delle funzionalità di Chrome che possono influire sulla privacy di un utente. Consulta anche l'API browser.proxy per gestire le impostazioni del proxy di Chrome.
Gestione dei download
Utilizza l'API
browser.downloads per avviare, monitorare, manipolare e cercare i download in modo programmatico.
Utilizzare i preferiti e l'Elenco di lettura
Utilizza l'API
browser.bookmarks e l'API browser.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.
Inserisci JavaScript e CSS
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.
Accedere alla scheda attiva
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.
Controlla le richieste web
Utilizza le API
browser.declarativeNetRequest, browser.webRequest e browser.webNavigation per osservare, bloccare e modificare le richieste di rete.
Registrazione audio e acquisizione schermo
Scopri diversi approcci per registrare audio e video da una scheda, una finestra o uno schermo utilizzando API della piattaforma web come
browser.tabCapture o getDisplayMedia().
Modifica le impostazioni del sito web
Utilizza l'API
browser.contentSettings per controllare se i siti web possono utilizzare funzionalità come cookie, JavaScript e plug-in. In generale, le impostazioni dei contenuti ti 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.
Service worker
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.
Autorizzazioni
Cerca di comprendere le autorizzazioni: come funzionano e quando evitare di chiederle quando non sono necessarie.
Filtro contenuti
Esistono diversi modi per implementare i filtri dei contenuti e della rete nelle estensioni di Chrome. Scopri le funzionalità di filtro dei contenuti disponibili per le estensioni e i diversi approcci, tecniche e API di filtro che possono essere utilizzati dalle estensioni di Chrome.
Messaggio
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.
Messaggi nativi
Attiva le estensioni per lo scambio di messaggi con applicazioni native.
Evitare il codice ospitato in remoto
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.
Storage
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.
Documenti fuori schermo
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.
Isolamento multiorigine
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".
Ciclo di vita dell'aggiornamento delle estensioni
Scopri come gli aggiornamenti di Chrome aggiornano il flusso delle estensioni e come monitorare la distribuzione degli aggiornamenti delle estensioni.