Lo scorso luglio abbiamo lanciato una nuova serie di blog per tenerti al corrente sugli sviluppi delle estensioni. Grazie al tuo prezioso feedback e alla nostra costante collaborazione con altri fornitori di browser del Web Extensions Community Group, continuiamo a migliorare le API delle estensioni e ci impegniamo per una maggiore coerenza tra i browser.
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 saranno disponibili entro la fine dell'anno. Iniziamo.
Nuove API e funzionalità delle estensioni
In questa sezione, condividiamo alcuni lanci significativi dell'API, esaminiamo brevemente altri miglioramenti dell'API e presentiamo le release future. Tutti i lanci sono attualmente disponibili nell'ultima versione beta. Per informazioni dettagliate, consulta il calendario delle release di Chromium.
In evidenza
Problemi noti risolti
Il team delle estensioni sta lavorando attivamente per risolvere i problemi di stabilità di Manifest V3. Chrome 116 ha lanciato molti miglioramenti che ci hanno aiutato a fare progressi significativi per colmare il divario di funzionalità tra Manifest V2 e V3. In Chrome 120, avremo risolto tutte le lacune prioritarie relative alla piattaforma 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 fileGestori per ChromeOS Lacros e dell'API userScripts che sarà disponibile più avanti nel corso del mese. Per ulteriori dettagli, consulta la pagina dei problemi noti aggiornata.
Stabilità dei service worker migliorata
I problemi di stabilità relativi al Service worker sono stati risolti. In Chrome 116, abbiamo aggiunto keep-alive efficaci alle API delle estensioni che visualizzano un prompt dell'utente e migliorato il supporto per WebSocket (consulta il tutorial Utilizzare WebSocket nelle estensioni). A partire da Chrome 118, un service worker rimarrà attivo durante una sessione dell'API Debugger attiva.
Consulta le nostre linee guida per i lavoratori dei servizi aggiornate per ulteriori dettagli. Se i tuoi utenti continuano a riscontrare problemi di stabilità relativi ai service worker nelle versioni di Chrome dopo la 119, comunicacelo.
Maggiore sicurezza
In precedenza, la navigazione ad alcuni URL di chrome://
utilizzando tabs.update()
, tabs.create
e windows.create()
generava un errore o causava l'arresto anomalo di Chrome. Inoltre, tabs.update()
non ha potuto aprire un URL JavaScript. In Chrome 117 abbiamo esteso il numero di URL chrome://
supportati e il blocco degli URL JavaScript ora si applica anche a tutti i metodi dell'API delle estensioni.
In Chrome 117, gli utenti riceveranno notifiche proattive nella pagina Estensioni di Chrome se un'estensione installata non è più disponibile nel Chrome Web Store. Questo può accadere se lo sviluppatore annulla la pubblicazione dell'estensione, questa viene rimossa per violazioni delle norme o viene identificata come malware. Per un approfondimento, visita la pagina Portare il controllo di sicurezza nella pagina chrome://extensions.
In Chrome 118, le estensioni non potranno accedere agli URL di file://
utilizzando le API chrome.tabs
e chrome.windows
, a meno che non sia attivata l'opzione "Consenti l'accesso agli URL dei file" nella pagina dei dettagli dell'estensione. Consulta la Discussione su 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 fuori schermo attivo. - API Side Panel 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 Tab Capture È stata aggiunta la possibilità di chiamare
getMediaStreamId()
dal service worker dell'estensione e ottenere un oggettoMediaStream
da un ID stream in un documento fuori schermo in Chrome 116. Per alcuni esempi, consulta Registrazione audio e acquisizione schermo. - API DeclarativeNetRequest: il valore predefinito per la proprietà
isUrlFilterCaseSensitive
è stato modificato infalse
in Chrome 118.
Disponibile a breve…
Con il rilascio di Chrome 120, prevediamo di risolvere tutti gli elementi rimanenti indicati nella pagina dei problemi noti. Inoltre, prevediamo di aggiungere le seguenti funzionalità:
- L'API UserScripts consentirà ai gestori degli script utente di coordinare come e quando inserire una raccolta di script utente nelle pagine web. Per informazioni dettagliate, 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. Per l'annuncio, guarda Novità delle estensioni di Chrome.
- A seguito del feedback nel gruppo della community delle estensioni web, aumenteremo in modo significativo il limite di set di regole statici abilitati da 10 a 50. Inoltre, stiamo aumentando il numero totale di set di regole statici consentiti da 50 a 100. Questa funzionalità è attualmente disponibile in versione canary.
- L'API Gestione file sarà disponibile per le estensioni di ChromeOS a partire da ChromeOS 120, che consente alle estensioni di aprire i file con estensioni e tipi MIME 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
. Ciò renderà le notifiche push un'alternativa più fluida ai WebSocket nei service worker (MV3) per la comunicazione asincrona client-server. Per informazioni dettagliate, consulta la pagina relativa al bug di Chromium e alla discussione WECG.
Continua a seguirci sulla pagina Novità delle estensioni per non perderti gli annunci non appena queste funzionalità saranno disponibili in Chrome Beta.
Upgrade della documentazione
Abbiamo inoltre migliorato e integrato la nostra documentazione. Continua a porre domande su chromium-group e a segnalare problemi relativi alla documentazione.
In evidenza
- Abbiamo rinnovato la pagina di destinazione dei Samples. Ora puoi filtrare per API, autorizzazione e tipo, in modo da individuare più facilmente esempi specifici. Questo miglioramento è stato frutto di una collaborazione con il nostro stagista Summer of Code, Xuezhou Dai. Leggi la sua esperienza in questo post del blog.
- Nella pagina Utilizzo dell'account Google Analytics con il Chrome Web Store viene descritto come visualizzare Google Analytics 4 per la scheda del Chrome Web Store, integrando i dati forniti dalla Dashboard per sviluppatori. Questa guida fornisce i passaggi 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 i cookie e le API di archiviazione web nelle estensioni di Chrome. Include tutto ciò che devi sapere su Privacy Sandbox in qualità di sviluppatore di estensioni.
- Abbiamo pubblicato nuovi articoli su come integrare i test nei progetti di estensioni: i test delle unità pubblicitarie delle estensioni di Chrome e i test end-to-end delle estensioni trattano linee guida e best practice generali per una serie di framework comunemente utilizzati. Per un tutorial pratico, vedi Testare le estensioni di Chrome con Puppeteer.
Altri aggiornamenti
- Abbiamo riscritto le indicazioni relative all'API Declarative Net Request per fornire un quadro più chiaro su 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 graduale dell'estensione Manifest V3.
- Scopri come connetterti a un WebSocket nel service worker della tua estensione.
- Abbiamo ampliato la nostra Guida del Centro 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 User Scripts.
- Tutorial ed esempi di Firebase.
- Riferimento API ReadingList.
Riprogettare il Chrome Web Store 🔴
All'inizio di questo mese abbiamo annunciato un'anteprima in anteprima del Chrome Web Store rinnovato, come suggerito durante la conferenza Google I/O. Prova tu stesso! https://chromewebstore.google.com/. Ecco alcune modifiche degne di nota:
- L'elenco di categorie è stato aumentato da un elenco di undici a un nuovo elenco di 17 in tre gruppi di categorie.
- Completamento automatico migliorato nella ricerca.
- Gli screenshot vengono ora visualizzati con una qualità notevolmente superiore. Se non l'hai ancora fatto, puoi caricare screenshot da 1280 x 800.
- Le risposte alle domande nella scheda Assistenza ora mostrano nuove righe.
- Quando rispondi alle recensioni degli utenti e alle domande di assistenza, ora la tua risposta includerà un badge "Sviluppatore" accanto al tuo nome.
- Puoi fornire agli utenti un link diretto alla pagina delle recensioni aggiungendo "/recensioni" alla fine dell'URL dell'elemento dello store. Ad esempio:
https://chromewebstore.google.com/detail/_EXTENSION_ID_/reviews
.
Grazie per il contributo fornito finora sul gruppo Chromium-google. Non esitare a partecipare alla discussione o invia il tuo feedback direttamente al team di CWS utilizzando la voce di menu Fornisci feedback:
Inoltre, puoi inviare un modulo di autocandidatura per apparire nella raccolta Scelte della redazione. Continua a seguirci per i miglioramenti che saranno disponibili a breve anche nella dashboard per sviluppatori.
💡 Lo sapevi?
- È disponibile un nuovo video sul debug delle estensioni di Chrome. Riguarda molti argomenti che potresti già conoscere, ma condivide anche alcuni suggerimenti utili per utilizzare DevTools nelle estensioni.
- Ora devi fornire norme sulla privacy per ogni estensione. In precedenza, potevi aggiungere una sola norma sulla privacy per account sviluppatore, ma era imbarazzante avere alcune estensioni in un unico account sviluppatore. Questa nuova interfaccia è disponibile nella scheda Privacy del tuo elemento nella dashboard per sviluppatori. Di conseguenza, le norme sulla privacy a livello di account non sono più supportate.
Contattaci 🙌
Abbiamo continuato a entrare in contatto con la community di sviluppatori di estensioni tramite incontri 1:1, lanciando nuovi programmi e partecipando ai summit. Ecco alcuni punti salienti:
- Il programma Esperti Google Developers sulle estensioni è stato lanciato ad agosto. Abbiamo più di una decina di nuovi GDE da tutto il mondo incentrati sulle estensioni di Chrome, che ci forniscono feedback molto utili. È un momento davvero entusiasmante per il programma.
- Abbiamo partecipato alla conferenza annuale di W3C come parte del Web Extensions Community Group e abbiamo incontrato i rappresentanti di Firefox e Safari, nonché diversi membri della community. Abbiamo fatto progressi significativi su diversi argomenti, tra cui il passaggio a API di estensione più coerenti, il lavoro a una specifica e lo sviluppo di Web Platform Tests per creare una nuova suite di test. Leggi i minuti completi nel repository WECG.
- La scorsa settimana, il team dedicato alle estensioni ha partecipato al Dev Summit sul filtro degli annunci di Amsterdam. Hanno incontrato diversi di voi durante una chiacchierata sul caffè che hanno tenuto prima della settimana del summit e durante l'orario di apertura del venerdì.
Anche se non hai potuto partecipare a nessuno di questi eventi, puoi continuare a partecipare ponendo domande al gruppo Google chromium-extensions, seguendo le discussioni dei partner browser relative al WECG e segnalando eventuali problemi relativi alla documentazione.
Grazie ancora per aver scelto di far parte della community di sviluppatori di estensioni.