A luglio abbiamo lanciato una nuova serie di post del blog per aggiornarti sugli sviluppi delle estensioni. Grazie al tuo prezioso feedback e alla nostra collaborazione continua con altri fornitori di browser nel gruppo della community WebExtensions, continuiamo a migliorare le API di estensione e a lavorare per una maggiore coerenza tra i browser.
Ti diamo il benvenuto nell'edizione di ottobre. In questo post esamineremo alcune delle modifiche apportate dal team delle estensioni di Chrome negli ultimi mesi, nonché alcune nuove funzionalità che verranno rilasciate entro la fine dell'anno. Iniziamo.
Nuove API ed estensioni
In questa sezione condividiamo alcuni lanci di API significativi, esaminiamo brevemente altri miglioramenti delle API e comunichiamo le release imminenti. Tutti i lanci sono attualmente disponibili nell'ultima versione beta. Per maggiori dettagli, consulta il calendario delle release di Chromium.
In evidenza
Problemi noti risolti
Il team delle estensioni si sta adoperando per risolvere i problemi di stabilità di Manifest V3. Chrome 116 ha introdotto molti miglioramenti che ci hanno aiutato a fare progressi significativi verso la chiusura del divario di funzionalità tra Manifest V2 e V3. In Chrome 120, avremo completato la risoluzione di tutte le lacune della piattaforma con priorità e chiuso tutti i bug critici documentati nella pagina dei problemi noti. Tutte le funzionalità sono attualmente disponibili in Chrome 120 Canary, ad eccezione del supporto di fileHandler per ChromeOS Lacros e dell'API userScripts, che verrà rilasciata entro la fine del mese. Per maggiori dettagli, consulta la pagina dei problemi noti aggiornata.
Stabilità di Service Worker migliorata
I problemi di stabilità relativi ai worker di servizio sono stati risolti. In Chrome 116 abbiamo aggiunto keep-alive avanzati alle API di estensione che mostrano una richiesta all'utente e abbiamo migliorato il supporto di WebSocket (consulta il tutorial Utilizzare WebSocket nelle estensioni). A partire da Chrome 118, un worker di servizio rimarrà attivo durante una sessione attiva dell'API di debugger.
Per ulteriori dettagli, consulta le nostre linee guida aggiornate sui worker di servizio. Se i tuoi utenti continuano a riscontrare problemi di stabilità relativi ai worker di servizio nelle versioni di Chrome successive alla 119, comunicacelo.
Maggior sicurezza
In precedenza, la navigazione ad alcuni URL chrome://
utilizzando tabs.update()
, tabs.create
e windows.create()
generava un errore o causava l'arresto anomalo di Chrome. Inoltre, tabs.update()
non è riuscito ad aprire un URL JavaScript. In Chrome 117 abbiamo ampliato il numero di URL chrome://
supportati e il blocco degli URL JavaScript ora si applica anche a tutti i metodi dell'API di estensione.
In Chrome 117, gli utenti riceveranno notifiche proattive nella pagina Estensioni di Chrome se un'estensione che hanno installato non è più disponibile sul Chrome Web Store. Ciò può accadere se lo sviluppatore annulla la pubblicazione dell'estensione, se viene rimossa per violazioni delle norme o se viene identificata come malware. Per un'analisi approfondita, consulta Integrazione del controllo di sicurezza nella pagina chrome://extensions.
In Chrome 118, le estensioni non potranno accedere agli URL file://
utilizzando le API chrome.tabs
e chrome.windows
, a meno che l'opzione "Consenti l'accesso agli URL dei file" non sia attivata nella pagina dei dettagli dell'estensione. Consulta la discussione WECG.
Altri lanci di API
- API di runtime: a partire da Chrome 116, puoi utilizzare
runtime.getContexts()
per recuperare informazioni sui contesti attivi. Ad esempio, puoi controllare se è presente un documento offscreen attivo. - API Riquadro laterale In Chrome 116 puoi utilizzare
sidepanel.open()
per aprire il riquadro laterale dell'estensione in modo programmatico in risposta a un gesto dell'utente, ad esempio un clic sul menu contestuale. - API TabCapture In Chrome 116 è stata aggiunta la possibilità di chiamare
getMediaStreamId()
dal service worker dell'estensione e di ottenere un oggettoMediaStream
da un ID stream in un documento offscreen. Per esempi, consulta Registrazione audio e screenshot. - API DeclarativeNetRequest: il valore predefinito per la proprietà
isUrlFilterCaseSensitive
è stato modificato infalse
in Chrome 118.
Disponibile a breve...
Prevediamo di risolvere tutti gli elementi rimanenti nella pagina dei problemi noti con il rilascio di Chrome 120. Inoltre, prevediamo di aggiungere le seguenti funzionalità:
- L'API UserScripts consentirà ai gestori di script utente di coordinare come e quando iniettare una raccolta di script utente nelle pagine web. Per maggiori dettagli, consulta la proposta WECG.
- L'API ReadingList consentirà agli sviluppatori di creare, leggere, aggiornare ed eliminare i metadati nel riquadro Elenco di lettura del riquadro laterale. Guarda Novità delle estensioni di Chrome per l'annuncio.
- In seguito ai feedback ricevuti nel gruppo della community delle estensioni web, stiamo aumentando notevolmente il limite dei set di regole statiche abilitati da 10 a 50. Inoltre, aumenteremo il numero totale di set di regole statiche consentiti da 50 a 100. Questa funzionalità è attualmente disponibile in Canary.
- L'API di gestione dei file sarà disponibile per le estensioni di ChromeOS a partire da ChromeOS 120 e consentirà alle estensioni di aprire file con tipi MIME e estensioni specificati in modo simile alla gestione dei file della piattaforma web.
- Le estensioni potranno utilizzare l'API Push web tramite
self.registration.pushManager.subscribe()
senza mostrare una notifica visibile all'utente impostandouserVisibleOnly
sufalse
. In questo modo, le notifiche push diventeranno un'alternativa più semplice ai WebSocket nei worker di servizio (MV3) per la comunicazione asincrona client-server. Per maggiori dettagli, consulta il bug di Chromium e la discussione WECG.
Continua a visitare la pagina Novità nelle estensioni per non perderti gli annunci non appena queste funzionalità saranno disponibili in Chrome Beta.
Upgrade della documentazione
Abbiamo anche migliorato e ampliato la nostra documentazione. Continua a porre domande nel gruppo chromium e segnala i problemi relativi alla documentazione.
In evidenza
- Abbiamo rinnovato la pagina di destinazione Samples. Ora puoi filtrare in base ad API, autorizzazione e tipo, il che semplifica l'individuazione di esempi specifici. Questo miglioramento è stato realizzato in collaborazione con il nostro stagista del programma Summer of Code, Xuezhou Dai. Leggi la sua esperienza in questo post del blog.
- L'articolo Utilizzare l'account Google Analytics con il Chrome Web Store descrive come visualizzare Google Analytics 4 per la tua scheda del Chrome Web Store, integrando i dati forniti dalla Dashboard per sviluppatori. Questa guida illustra la procedura per attivare Google Analytics, monitorare il rendimento degli annunci, monitorare le conversioni e concedere ad altri account l'accesso ai dati di Google Analytics.
- Abbiamo pubblicato una nuova guida su come funzionano le API di cookie e archiviazione web nelle estensioni di Chrome. Include tutto ciò che devi sapere su Privacy Sandbox in qualità di sviluppatore di estensioni.
- Abbiamo lanciato nuovi articoli su come integrare i test nei progetti di estensioni: Test di unità per le estensioni di Chrome e Test end-to-end per le estensioni forniscono indicazioni generali e best practice per una serie di framework popolari. Per un tutorial pratico, vedi Testare le estensioni di Chrome con Puppeteer.
Altri aggiornamenti
- Abbiamo riscritto le indicazioni relative all'API Declarative Net Request in modo da fornire un quadro più chiaro di come implementare i set di regole dichiarative.
- Abbiamo aggiunto ulteriori indicazioni per la migrazione del codice ospitato in remoto a Manifest V3. Inoltre, per ridurre al minimo il rischio di riscontrare problemi durante il rilascio, offriamo strategie per la pubblicazione dell'estensione Manifest V3 in più fasi.
- Scopri come connetterti a un WebSocket nel service worker dell'estensione.
- Abbiamo ampliato la nostra guida per ricevere assistenza per includere istruzioni più dettagliate su come segnalare un bug, tenere traccia dei problemi esistenti, richiedere nuove funzionalità e altro ancora.
Disponibile a breve...
- Riferimento e tutorial sull'API Script utente.
- Tutorial ed esempi di Firebase.
- Riferimento all'API ReadingList.
Nuovo design del Chrome Web Store 🌈
All'inizio di questo mese abbiamo annunciato un'anteprima del nuovo Chrome Web Store, come anticipato durante la conferenza Google I/O. Prova tu stesso! https://chromewebstore.google.com/. Ecco alcune modifiche degne di nota:
- L'elenco delle categorie è passato da undici a diciassette in tre gruppi di categorie.
- Completamento automatico migliorato nella ricerca.
- Ora gli screenshot vengono visualizzati con una qualità notevolmente superiore. Se non l'hai ancora fatto, puoi caricare screenshot a 1280 x 800.
- Le risposte alle domande nella scheda Assistenza ora mostrano i nuovi riga.
- Quando rispondi alle recensioni degli utenti e alle domande di assistenza, la tua risposta ora includerà un badge "Sviluppatore" accanto al tuo nome.
- Puoi fornire agli utenti un link diretto alla pagina delle recensioni aggiungendo "/reviews" alla fine dell'URL dell'articolo dello Store. Ad esempio:
https://chromewebstore.google.com/detail/_EXTENSION_ID_/reviews
.
Grazie a tutti per il contributo finora fornito nel gruppo chromium-google. Non esitare a partecipare alla discussione o a inviare il tuo feedback direttamente al team CWS utilizzando la voce di menu Fornisci feedback:
Inoltre, puoi inviare un modulo di autocandidatura per far sì che il tuo video venga incluso nella raccolta Scelto dagli editor. Continua a seguirci: sono in arrivo miglioramenti anche per la dashboard per sviluppatori.
💡 Lo sapevi?
- È disponibile un nuovo video sul debug delle estensioni di Chrome. Tratta molti argomenti che potresti già conoscere, ma condivide anche alcuni trucchi utili per l'utilizzo di DevTools nelle estensioni.
- Ora devi fornire le norme sulla privacy per ogni estensione. In precedenza, potevi aggiungere una sola norma sulla privacy per account sviluppatore, ma era spiacevole se avevi alcune estensioni in un account sviluppatore. Questa nuova interfaccia è disponibile nella scheda Privacy del tuo elemento nella dashboard per sviluppatori. Ciò significa che le norme sulla privacy a livello di account non sono più supportate.
Ti contatto 🙌
Abbiamo continuato a contattare la community di sviluppatori di estensioni tramite incontri individuali, il lancio di nuovi programmi e la partecipazione a summit. Ecco alcuni punti salienti:
- Il programma Google Developer Experts per le estensioni è stato lanciato ad agosto. Abbiamo più di una dozzina di nuovi GDE specializzati in estensioni di Chrome provenienti da tutto il mondo che ci forniscono ottimi feedback. È un momento molto entusiasmante per il programma.
- Abbiamo partecipato al TPAC (conferenza annuale del W3C) come parte del Gruppo della community per le estensioni web e abbiamo incontrato i rappresentanti di Firefox e Safari, oltre a diversi membri della community. Abbiamo compiuto notevoli progressi in diversi ambiti, tra cui l'adozione di API di estensioni più coerenti, la stesura di una specifica e la creazione di una nuova suite di test sulla base dei test della piattaforma web. Leggi i verbali completi nel repository WECG.
- La scorsa settimana, il team di estensione ha partecipato al Ad-Filtering Dev Summit di Amsterdam. Ha incontrato diversi di voi durante una chiacchierata con il team organizzata prima della settimana del summit e durante l'open day di venerdì.
Anche se non hai potuto partecipare a nessuno di questi eventi, puoi continuare a partecipare ponendo domande nel gruppo Google chromium-extensions, seguendo le discussioni dei partner del browser nel WECG e segnalando eventuali problemi relativi alla documentazione.
Grazie ancora per aver scelto di far parte della community di sviluppatori di estensioni.