Novità delle estensioni di Chrome

Visita spesso questa pagina per informazioni sulle modifiche alle estensioni di Chrome, alla relativa documentazione, alle norme correlate o ad altre modifiche. Troverai altre notifiche pubblicate nel gruppo Google Estensioni. La pianificazione di Chrome elenca le date di rilascio stabili e beta.

Chrome 127: nuova API action.openPopup

Pubblicato il

A partire da Chrome 127, l'API action.openPopup è disponibile per tutte le estensioni. In precedenza era disponibile solo in versione canary o per le estensioni installate da un criterio.

Video: intervista al team Trust & Safety

Pubblicato il

Il team di sviluppo delle estensioni di Chrome ha incontrato il team Trust & Safety che conduce la revisione nel Chrome Web Store per porre le tue domande. Guarda il video completo

Post del blog: Inizio dell'eliminazione graduale di Manifest V2

Pubblicato il

A partire dal 3 giugno sui canali Chrome Beta, Dev e Canary, se gli utenti hanno ancora installato le estensioni Manifest V2, alcuni inizieranno a visualizzare un banner di avviso quando visiteranno la pagina di gestione delle estensioni (chrome://extensions), informandoli che alcune estensioni (Manifest V2) installate a breve non saranno più supportate. Scopri di più nell'annuncio ufficiale

Aggiornamenti all'interfaccia utente del riquadro laterale

Pubblicato il

Di recente abbiamo apportato alcune modifiche all'interfaccia utente del riquadro laterale, tra cui l'aggiunta di un'icona a forma di puntina e la rimozione dell'icona del riquadro laterale globale. Per saperne di più, consulta gli annunci di pubblica utilità e consulta la nostra documentazione e gli esempi aggiornati.

Post del blog: Estensioni di Chrome alla conferenza Google I/O 2024

Pubblicato il

Abbiamo alle spalle un altro Google I/O e abbiamo parlato di tutti gli entusiasmanti aggiornamenti relativi alle estensioni. Vai su YouTube per guardare il video completo e leggere il nostro post del blog per alcuni dei momenti salienti.

Salta la revisione delle modifiche idonee alle richieste nette dichiarative

Pubblicato il

Il Chrome Web Store ora ti consente di saltare la revisione delle modifiche idonee quando utilizzi l'API Declarative Net Request. Scopri di più sull'idoneità e su come eseguire l'attivazione nella documentazione del Chrome Web Store.

Percentuale di deployment disponibile nell'API Chrome Web Store

Pubblicato il

Di recente abbiamo aggiornato la documentazione dell'API Chrome Web Store per includere informazioni su deployPercentage, che consentono di assegnare una percentuale di un'implementazione parziale. Scopri di più su deployPercentage.

Chrome 126: prove dell'origine nelle estensioni

Pubblicato il

Chrome 126 introduce il nuovo campo manifest.json trial_tokens, che ti consente di attivare le prove dell'origine e le prove relative al ritiro su tutte le piattaforme di estensioni. Per ulteriori informazioni, leggi la guida.

Post del blog: Che cosa succede nelle estensioni di Chrome - Aprile 2024

Pubblicato il

Abbiamo pubblicato una nuova edizione di Cosa sta succedendo nelle estensioni di Chrome. in cui si parla di cosa ha lavorato il team addetto alle estensioni negli ultimi mesi. Ciò include: rollback della versione nel Chrome Web Store, migliore supporto di Firebase Auth e ulteriori lanci e aggiornamenti di API.

Rollback delle versioni nella Dashboard per sviluppatori del Chrome Web Store

Pubblicato l'

Esegui il rollback dell'estensione alla versione pubblicata precedente nel Chrome Web Store, senza ulteriori controlli. Per ulteriori informazioni, leggi il post del blog e la documentazione.

Chrome 124: API Advanced documentScan

Pubblicato il

Su ChromeOS è ora disponibile un'API documentScan avanzata per rilevare e recuperare immagini dagli scanner di documenti collegati.

Chrome 124: supporto di WebGPU nei service worker

Pubblicato il

A partire da Chrome 124, i service worker supportano WebGPU. Per iniziare rapidamente, consulta l'esempio dell'estensione WebGPU.

Chrome 123: l'API Events supporta il filtro per blocchi CIDR

Pubblicato l'

L'API Events supporta ora il filtro per blocchi CIDR (Classless Inter-Domain Routing). Un blocco CIDR è una raccolta di indirizzi IP che condividono un prefisso di rete e lo stesso numero di bit. In precedenza, uno sviluppatore che doveva filtrare più indirizzi IP doveva configurare una regola di filtro per ciascuno degli indirizzi nell'intervallo di blocchi. Ora, quando un'estensione chiama addListener(), una regola passata significa che il gestore di eventi viene chiamato solo se la parte host di un URL è un indirizzo IP ed è contenuta in uno dei blocchi CIDR specificati in un array.

Chrome Web Store: aggiornamenti dei requisiti di lunghezza dei nomi delle estensioni

Pubblicato il

Nel Chrome Web Store è ora previsto un limite universale di 75 caratteri per il campo "name" di un'estensione nel file manifest.json. In precedenza, il limite per l'inglese era di 45 caratteri e il campo "name" non era soggetto a limitazioni in altre lingue.

In origine, questo era pensato per consentire differenze culturali e linguistiche che potrebbero non essere acquisite con lo stesso numero di caratteri. Purtroppo questa funzionalità è stata utilizzata in modo illecito da un numero limitato di sviluppatori per inviare spam nello store. Di conseguenza, stiamo introducendo un nuovo limite universale, che porta a 75 caratteri. Attualmente, questo limite copre quasi tutte le estensioni presenti sullo store, pertanto è probabile che questa modifica non richieda interventi da parte tua. Se provi a caricare un'estensione con un nome più lungo del limite massimo, il caricamento verrà bloccato dallo store.

Post del blog: Eyeo's journey to testing della sospensione del service worker

Pubblicato il

In questo post del team di Extension Engine di eyeo, esamineremo il problema di testare i service worker delle estensioni. In Manifest V2, le estensioni erano visualizzate in una pagina in background e rimanevano attive per tutto il ciclo di vita dell'estensione. Manifest V3 utilizza invece i service worker e, per impostazione predefinita, i service worker consentono di risparmiare risorse arrestandosi quando non sono necessari. Ciò presenta alcune sfide di test. Questo post spiega come Eyeo ha affrontato queste sfide.

Chrome 123: le sveglie ora vengono eseguite quando il dispositivo è in sospensione

Pubblicato il

Le sveglie impostate utilizzando l'API chrome.alarms non vengono più ritardate quando un dispositivo entra in modalità di sospensione. Quando il dispositivo si riattiva, la sveglia si attiva una volta, indipendentemente dal numero di sveglie perse. Ad esempio, supponiamo che sia impostata una sveglia che suonerà una volta all'ora e che il dispositivo su cui è accesa sia in sospensione dalle 00:55 alle 02:05, dopodiché solo la sveglia delle 02:00 attiverà l'evento onAlarm. Si accenderà più vicino possibile alle 2:00, immediatamente quando un dispositivo si attiva se era in sospensione.

Questa modifica allinea Chrome al comportamento concordato nel gruppo della community di estensioni web.

Post del blog: Modifiche al comportamento di bfcache con le porte dei messaggi delle estensioni

Pubblicato il

La cache back/forward (bfcache) è un'ottimizzazione del browser che consente la navigazione immediata avanti e indietro. A partire da Chrome 123, quando una pagina con la porta dell'estensione aperta viene archiviata in bfcache, il canale dei messaggi viene chiuso, il che significa che a quella pagina non verrà inviato nessun messaggio. Di conseguenza, gli script delle estensioni devono rimanere in ascolto degli eventi del ciclo di vita come onDisconnect e configurare una nuova connessione quando la pagina viene ripristinata da BFCache.

Per ulteriori informazioni e per il codice campione, consulta Modifiche al comportamento di BFCache con le porte dei messaggi delle estensioni.

Chrome 122: Promessa di supporto sulle API di estensioni asincrone

Pubblicato il

Abbiamo completato l'implementazione del supporto Promise per tutti i metodi API delle estensioni asincrone. Questo è stato fatto per modernizzare i metodi delle API migliorando l'ergonomia di gestire le operazioni asincrone. Alcuni metodi (ad esempio, desktopCapture.chooseDesktopMedia()) continuano a supportare solo i callback perché le relative piattaforme attuali non sono compatibili con Promise. Per la compatibilità con le versioni precedenti, i callback sono ancora supportati. Se trovi una promessa che non va a buon fine, segnala un bug.

Nuove indicazioni per la comunicazione in tempo reale

Pubblicato il

Abbiamo appena pubblicato delle guide sulle opzioni in tempo reale nelle estensioni. Gli aggiornamenti in tempo reale forniscono un percorso di comunicazione istantaneo dai tuoi server direttamente alle installazioni delle estensioni. Inoltre, sono disponibili nuove indicazioni per l'utilizzo di chrome.gcm e Web Push.

Nuove indicazioni e nuovi esempi: test della terminazione del service worker

Pubblicato il

Abbiamo appena pubblicato una guida su come testare la chiusura dei service worker con Puppeteer. L'esempio allegato lo dimostra in Puppeteer e Selenium.

Esempio aggiornato per i messaggi nativi

Pubblicato l'

Abbiamo appena pubblicato un esempio aggiornato per i messaggi nativi. che consente all'estensione di avviarsi e comunicare con un'altra applicazione. Grazie al collaboratore GitHub Shubham-Rasal per il lavoro su questo argomento.

Chrome 121: nuova proprietà lastAccessed nelle schede.Scheda

Pubblicato il

Una nuova proprietà denominata lastAccessed è stata aggiunta all'oggetto tabs.Tab. Questa proprietà indica quando la scheda è stata attivata l'ultima volta. Il valore restituito è espresso in millisecondi dall'epoca.

Chrome 121: le chiavi "in background" non supportate ora emettono un avviso

Pubblicato l'

Nel passaggio da Manifest V2 a Manifest V3, i elementi secondari della chiave manifest "background" sono stati modificati per consentire la sostituzione degli script in background con i service worker delle estensioni. In precedenza, l'aggiunta delle chiavi Manifest V2 "scripts", "page" o "persistent" alla chiave "background" di un'estensione Manifest V3 generava un errore. La presenza di queste chiavi ora attiva un avviso.

Ciò avviene per consentire l'utilizzo di un singolo file manifest nelle estensioni di più browser, per una proposta nel gruppo della community.

Chrome 120: granularità minima dell'allarme ridotta a 30 secondi

Pubblicato il

A partire da Chrome 120, le estensioni Manifest V3 possono utilizzare l'API chrome.alarms con ritardi o periodi di 30 secondi, anziché richiedere valori di almeno 60 secondi.

Post del blog: Ripresa della transizione a Manifest V3

Pubblicato il

La cronologia del supporto di Manifest V2 è stata aggiornata. Per informazioni dettagliate, consulta il post del blog di novembre 2023.

Post del blog: Miglioramenti al supporto del filtro dei contenuti in Manifest V3

Pubblicato il

Scopri come abbiamo migliorato l'API declarativeNetRequest nel nostro nuovo post del blog.

Post del blog: Novità di Chrome 120 per le estensioni

Pubblicato il

Di recente è stato rilasciato Chrome 120 Beta. Per un riepilogo degli importanti aggiornamenti che interessano gli sviluppatori di estensioni, leggi il nostro nuovo post del blog: Novità di Chrome 120 per le estensioni. Questa release segna anche un traguardo importante in quanto rimuove i due elementi finali (userScript, gestore di file su ChromeOS) dall'elenco di lacune critiche della piattaforma.

PSA: modifica alla gestione degli URL delle norme sulla privacy nella Dashboard per sviluppatori

Pubblicato il

Le norme sulla privacy nella Dashboard per sviluppatori vengono ora aggiunte a livello di articolo. In questo modo puoi fornire norme sulla privacy diverse per ogni articolo. Per scoprire di più su questa modifica, consulta il nostro PSA.

Video: una chat con Matt Frisbie

Pubblicato il

Abbiamo appena pubblicato un nuovo video sul canale YouTube di Chrome per gli sviluppatori in chat con l'esperto e autore Google Developer, Matt Frisbie. Guardalo qui.

Nuove indicazioni sui test delle estensioni

Pubblicato il

Abbiamo appena pubblicato nuove indicazioni su come scrivere test automatici per le estensioni, tra cui come scrivere test delle unità, indicazioni generali e tutorial sui test end-to-end.

Post del blog: Che cosa succede nelle estensioni di Chrome - Ottobre 2023

Pubblicato il

Abbiamo appena pubblicato la seconda edizione di What's Happening in Chrome Extensions. Il post descrive ciò su cui il team di estensione ha lavorato negli ultimi mesi, tra cui la risoluzione dei problemi di stabilità dei service worker e i progressi positivi nella colmare tutte le lacune della piattaforma MV3. Inoltre, condividiamo fantastiche versioni dell'API, come l'API Reading List e l'API User Scripts.

Aumento dei limiti dei set di regole statici nell'API Declarative Net Request

Pubblicato il

A seguito del feedback nel gruppo della community 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 opzione è attualmente disponibile in versione canary.

Indicazioni migliorate sul codice ospitato in remoto

Pubblicato il

Un requisito di Manifest V3 è che le estensioni non possono più utilizzare il codice ospitato in remoto. Questo ha fatto parte della nostra guida alla migrazione fin dall'inizio, ma abbiamo pensato che valesse la pena migliorare le indicazioni in merito a questo problema. Questa pagina ora fornisce maggiori informazioni, descrivendo ciò che è ancora possibile in Manifest V3 e fornendo maggiori informazioni sulle strategie di upgrade.

È presente un'aggiunta correlata alla sezione Risoluzione dei problemi relativi alle violazioni del Chrome Web Store. Una nuova sezione descrive i motivi più comuni per cui le estensioni con codice ospitato in remoto vengono rifiutate.

Chrome 118: isUrlFilterCaseSensitive ora è impostato su false per impostazione predefinita

Pubblicato l'

A partire da Chrome 118, la proprietà isUrlFilterCaseSensitive nell'API chrome.declarativeNetRequest è stata modificata in false per impostazione predefinita. Se vuoi mantenere il comportamento precedente, puoi impostare esplicitamente isUrlFilterCaseSensitive su true nelle regole declarativeNetRequest.

Questo segue le discussioni del gruppo della community di Estensioni web. Firefox e Safari hanno già implementato una modifica simile.

Documentazione su cookie e API di archiviazione web

Pubblicato il

Abbiamo pubblicato una nuova guida sul funzionamento dei cookie e delle API di archiviazione web nelle estensioni di Chrome. Include dettagli sulle modifiche al partizionamento dei cookie e dello spazio di archiviazione in Privacy Sandbox, un progetto in corso per il ritiro dei cookie di terze parti tramite la creazione di una serie di nuove API per le piattaforme web, nonché dettagli su come funzionano nelle estensioni.

Gli esempi di estensioni sono ora disponibili per la ricerca

Pubblicato il

Di recente abbiamo creato una pagina che ti consente di cercare esempi di estensioni di Chrome. La pagina di ricerca offre più opzioni. Una casella di ricerca ti consente di cercare testo nei titoli di esempio. Puoi limitare la ricerca in base all'autorizzazione o all'API dell'estensione. Un filtro aggiuntivo ti consente di limitare la ricerca ad API o ad esempi funzionali (caso d'uso).

Questa nuova pagina di esempio è stata creata da un partecipante a Summer of Code di Google, Xuezhou Dai, che ha anche contribuito con diversi nuovi campioni. Puoi leggere le loro esperienze l'estate scorsa nel loro post sul nostro blog.

Come in precedenza, i nostri esempi di codice sono ancora disponibili su GitHub per la clonazione o il fork.

Chrome 118: modifiche all'apertura del file: URL dello schema

Pubblicato il

A partire da Chrome 118, per le estensioni sarà necessario attivare l'impostazione "Consenti l'accesso agli URL dei file" dalla pagina chrome://extensions per aprire gli URL con schema file:// utilizzando le API Schede o Windows. Puoi verificare questo accesso in modo programmatico chiamando il numero chrome.extension.isAllowedFileSchemeAccess(). Firefox già limita gli URL dei file e Safari supporta questa modifica. Per ulteriori informazioni, leggi il post nel gruppo Google delle estensioni.

Chrome 117: protezioni degli URL espansi nelle navigazioni delle API delle estensioni

Pubblicato il

La navigazione attivata in precedenza dalle chiamate API delle estensioni per tabs.update(), tabs.create() e windows.create() emetteva un errore per alcuni URL chrome://. Inoltre, era vietata la chiamata di tabs.update() con un URL JavaScript. Nella versione 117, queste protezioni sugli URL JavaScript sono state estese al metodo tabs.create() e sono stati aggiunti ulteriori URL chrome:// all'elenco degli URL vietati che si applicano a tutti i metodi menzionati in precedenza.

Linee guida migliorate per l'API declarativeNetRequest

Pubblicato l'

L'API chrome.declarativeNetRequest blocca o modifica le richieste di rete specificando regole dichiarative. In questo modo le estensioni possono modificare le richieste di rete senza intercettarle e visualizzarne i contenuti, garantendo così maggiore privacy agli utenti. Inoltre, è complicato da usare. Tenendo conto di ciò, abbiamo riscritto le indicazioni in modo da ritenere più chiaro come implementare i set di regole dichiarative. Leggi la nuova sezione al link qui sopra.

Utilizzo dell'account Google Analytics con il Chrome Web Store

Pubblicato il

Il Chrome Web Store offre l'integrazione con Google Analytics, che ti consente di visualizzare dati e analisi relativi alla tua scheda del Chrome Web Store oltre alla visualizzazione offerta nella Dashboard per sviluppatori. Per ulteriori informazioni, consulta Utilizzo dell'account Google Analytics con il Chrome Web Store.

Chrome 115: DevTools i passaggi sugli script dei contenuti per impostazione predefinita

Pubblicato il

Gli script dei contenuti inseriti sono ora nell'elenco degli elementi da ignorare di DevTools per impostazione predefinita. Ciò non influisce sui punti di interruzione, ma significa che gli script di contenuti verranno superati durante il debug e le eccezioni di questi script verranno ignorate. Quando uno script di contenuti è aperto nella scheda Origini, un banner ti avvisa se l'opzione è attiva e offre la possibilità di rimuoverlo dall'elenco degli elementi da ignorare. Per disattivare questo comportamento, apri DevTools, vai a Impostazioni e poi a Elenco ignorati. Per scoprire di più, consulta Novità di DevTools.

Chrome 116 beta: molto di più di quello che possiamo contenere

Pubblicato il

Chrome 116 è una grande release per le estensioni. Ora puoi aprire i riquadri laterali in modo programmatico. Un nuovo metodo ti consente di sapere se è presente un documento fuori schermo attivo. I service worker hanno ottenuto moltissimi miglioramenti. In 116 sono stati apportati miglioramenti a sufficienza per cui abbiamo scritto un post del blog che li riguarda. Chrome 116 è in versione beta dal 19 luglio.

Post del blog: Che cosa succede nelle estensioni di Chrome

Pubblicato il

Abbiamo appena pubblicato una panoramica delle modifiche e dei miglioramenti apportati alle estensioni di quest'anno. Il post illustra le nuove importanti funzionalità dell'anno, tra cui l'API Side Panel, i miglioramenti dei service worker e i documenti fuori schermo. Potrai anche dare un'occhiata a ciò a cui stiamo lavorando per questo trimestre. L'articolo ne elenca molte altre, con link a tutti i contenuti.

Nuove indicazioni ed esempi: scopri come utilizzare Google Analytics 4 nella tua estensione di Chrome

Pubblicato il

Abbiamo pubblicato nuovi esempi e nuove linee guida per Google Analytics e la geolocalizzazione:

Chrome 115: specifica più motivi in chrome.offscreen.createDocument()

Pubblicato il

Ora puoi specificare più enumerazioni reason quando chiami chrome.offscreen.createDocument(). Usa questa opzione quando un documento fuori schermo verrà usato per più scopi diversi. Il browser utilizza i motivi forniti per determinare la durata del documento fuori schermo.

Nuovo strumento: strumento di test dell'aggiornamento delle estensioni

Pubblicato il

Abbiamo appena rilasciato lo Strumento di test degli aggiornamenti delle estensioni, un server di aggiornamento delle estensioni locale che può essere utilizzato per testare gli aggiornamenti delle estensioni di Chrome durante lo sviluppo locale, incluse le concessioni delle autorizzazioni. Lo strumento mostra il flusso di aggiornamento dell'utente, incluso il mantenimento di un'estensione disattivata finché un utente non concede le nuove autorizzazioni richieste. Questo strumento è particolarmente utile per simulare le modifiche alle autorizzazioni richieste durante l'aggiornamento di un'estensione da Manifest V2 a Manifest V3.

Chrome 114: nuova API riquadro laterale

Pubblicato il

Presentazione della nuova API Side Panel, una piattaforma complementare che consente agli utenti di accedere agli strumenti insieme ai contenuti che stanno sfogliando. Per scoprire di più, consulta la documentazione di riferimento dell'API Riquadro laterale. Inoltre, abbiamo aggiunto molti esempi di riquadri laterali al nostro repository GitHub di esempio. Inoltre, condividiamo ulteriori informazioni sui riquadri laterali nel nuovo post del blog Designing a Superior User Experience with the New Side Panel API (Progettare un'esperienza utente superiore con la nuova API del riquadro laterale). Anche le norme relative alle norme sulla qualità e le best practice sono state esaminate per fornire ulteriori indicazioni sulla creazione di estensioni nel riquadro laterale di alta qualità.

Il tuo feedback è importante per la creazione di questa API; condividi le tue opinioni e le tue richieste di funzionalità nei chromium-groups. Continua a seguirci per non perderti i nuovi aggiornamenti dell'API Side Panel.

Nuovi esempi: WASM nelle estensioni

Pubblicato il

Sono disponibili due nuovi esempi che mostrano come utilizzare WASM in un'estensione:

Un ringraziamento speciale al collaboratore GitHub @daidr per questi esempi.

Linee guida per la migrazione di Manifest V3 aggiornate

Pubblicato il

Abbiamo aggiornato la sezione Problemi noti delle nostre indicazioni sulla migrazione a Manifest V3 con un elenco aggiornato delle lacune della piattaforma delle estensioni che intendiamo chiudere prima di annunciare una nuova tempistica per il ritiro di Manifest V2.

Registrazione di audio e video con Manifest V3

Pubblicato il

Abbiamo appena pubblicato un nuovo articolo intitolato Registrazione audio e acquisizione schermo che tratta della registrazione di audio o video da una scheda, una finestra o uno schermo in Manifest V3. Questo articolo descrive diversi approcci alla registrazione che coinvolgono l'API chrome.tabCapture e la funzione getDisplayMedia().

Chrome 114: aumento della quota storage.local

Pubblicato il

Abbiamo aumentato la quota per la proprietà storage.local a circa 10 MB. Questa è stata accettata nel gruppo della community di Web Extensions. In questo modo storage.local è in linea con storage.session, che è stato modificato in Chrome 112.

Nuovo tutorial e guida per il service worker delle estensioni

Pubblicato il

I service worker sono parte integrante delle estensioni di Chrome. Abbiamo appena pubblicato un tutorial che spiega le nozioni di base della registrazione, del debug e dell'interazione con i service worker. Abbiamo anche aggiunto una nuova Guida per i lavoratori dei servizi che spiega in modo più dettagliato concetti importanti. Estenderemo questa sezione nei prossimi mesi.

Altri suggerimenti per la risoluzione dei problemi relativi alle violazioni del Web Store

Pubblicato il

Per facilitare la pubblicazione sul Chrome Web Store, abbiamo aggiunto nuove indicazioni in due aree. Le indicazioni per le funzionalità minime sono incentrate sull'offerta di vantaggi agli utenti e sull'arricchimento dell'esperienza di navigazione. Per gli annunci di affiliazione gli utenti sono a conoscenza delle estensioni che utilizzano link o codici di affiliazione per la monetizzazione e offrono un certo livello di controllo richiedendo un'azione da parte dell'utente prima dell'inclusione.

Nuove istruzioni per il convertitore dei file manifest delle estensioni

Pubblicato il

Abbiamo riscritto il file README del convertitore manifest estensione per consentirti di capire più facilmente ciò che devi fare dopo aver eseguito lo strumento. Il convertitore consente di eseguire la migrazione delle estensioni basate su Manifest V2 a Manifest V3. Il nuovo README descrive cosa fa lo strumento utilizzando parole che corrispondono molto a quelle dell'elenco di controllo della guida alla migrazione. Il convertitore non fa tutto, ma elimina molte attività che non richiedono un giudizio umano.

Chrome 113: Nuovi motivi per i documenti fuori schermo

Pubblicato il

Abbiamo aggiunto due nuovi tipi di motivi all'API Offscreen Documents. Utilizza LOCAL_STORAGE per accedere all'API localStorage della piattaforma web. Utilizza WORKER durante la creazione di web worker.

Google Analytics 4 ora nella Dashboard per sviluppatori

Pubblicato il

La Dashboard per sviluppatori del Chrome Web Store ora supporta Google Analytics 4 (GA4). Abbiamo semplificato la configurazione di Google Analytics e reso più semplice la gestione degli accessi per i publisher del gruppo. Se in precedenza hai utilizzato Google Universal Analytics per monitorare l'attività relativa alla tua scheda dello Store, dovrai intervenire entro il 1° luglio 2023 per assicurarti di continuare a ricevere dati sulla tua scheda dello Store. Per ulteriori informazioni, leggi il post sul gruppo Google Chromium Extensions.

L'API File handling arriva su ChromeOS

Pubblicato il

L'API File Gestori è disponibile per la sperimentazione su ChromeOS in Canary nelle versioni 112 e 113. Consente alle estensioni su ChromeOS di aprire file con tipi MIME ed estensioni dei file specificati. Per implementare la gestione di file, aggiungi un insieme di regole a manifest.json. Questa funzionalità è uguale a quella delle app web progressive. Per ulteriori informazioni, leggi l'articolo su questo sito.

Per attivare la gestione di file:

  • A partire dalla versione 112, avvia Chrome utilizzando il flag --enable-features=ExtensionWebFileHandlers, che inizia con 112
  • A partire dalla versione 113, incolla os://flags/#extension-web-file-handlers nella omnibox di Chrome e seleziona "Attivata" dal menu a discesa.

Speriamo di lanciare questa funzionalità in Chrome 115 alla fine di giugno. Tieni d'occhio questa pagina per gli aggiornamenti.

Nuovi esempi: dichiarazioni dinamiche e inserimento programmatico

Pubblicato il

Abbiamo creato un nuovo campione per l'API chrome.scripting. Illustra le dichiarazioni dinamiche, in cui uno script di contenuti viene registrato in fase di runtime, e l'inserimento programmatico, in cui uno script viene eseguito in una scheda già aperta.

Nuovi campioni: casi d'uso di richieste nette dichiarative

Pubblicato il

Sono disponibili tre nuovi esempi che dimostrano l'API Declarative Net Request. Ognuna dimostra l'implementazione di un singolo caso d'uso. La prima mostra come bloccare i cookie. Le altre due dimostrano il blocco e il reindirizzamento degli URL.

Chrome 112: aumento della quota di spazio di archiviazione.sessione

Pubblicato il

A partire da Chrome 112, la quota per la proprietà storage.session è stata aumentata a circa 10 MB. Questo è stato concordato nel gruppo della community per le estensioni web: https://github.com/w3c/webextensions/issues/350

Chrome 109: documenti fuori schermo

Pubblicato il

I documenti fuori schermo sono ora disponibili nelle estensioni Manifest V3. Aiutano la transizione dalle pagine in background ai service worker di estensione fornendo supporto per funzionalità e API relative al DOM. Per ulteriori informazioni, leggi il post del blog.

Chrome 110: è un'estensione attiva

Pubblicato il

Il metodo chrome.action.isEnabled() controlla in modo programmatico se un'estensione è stata attivata per una scheda specifica. In questo modo eviterai di mantenere lo stato attivo delle tue schede. Questo nuovo metodo prende un ID scheda e un riferimento a un callback e restituisce un valore booleano. Ha un limite: le schede create utilizzando chrome.declarativeContent restituiscono sempre false.

(Di recente, lo spazio dei nomi chrome.action ha ricevuto nuovi metodi per controllare l'aspetto dei badge delle estensioni. Per ulteriori informazioni, consulta la sezione Impostare i colori del badge.

Chrome 110: modifica del timeout di inattività del service worker

Pubblicato il

In precedenza, un service worker di estensione si arrestava spesso dopo cinque minuti. Abbiamo modificato questo comportamento per assomigliare più a quello dei service worker sul web. Un service worker di estensione verrà arrestato dopo 30 secondi di inattività o se l'elaborazione di una singola attività richiede più di 5 minuti. Per saperne di più, consulta Durata maggiore del service worker delle estensioni.

Post: Mettere in pausa l'eliminazione graduale di Manifest V2

Pubblicato il

Le tempistiche di ritiro di Manifest V2 sono in corso di revisione e gli esperimenti programmati per l'inizio del 2023 sono stati rinviati. Per maggiori informazioni, leggi l'aggiornamento nel gruppo Google chromium-extensions.

Chrome 110: impostare i colori del badge

Pubblicato il

Lo spazio dei nomi chrome.action offre due nuovi metodi per offrirti un maggiore controllo sui badge delle estensioni di aspetto. I metodi setBadgeTextColor() e getBadgeTextColor() consentono a un'estensione di modificare ed eseguire query sul colore del testo del badge dell'icona della barra degli strumenti. Se utilizzati in combinazione con setBadgeBackgroundColor e getBadgeBackgroundColor, questi nuovi metodi consentono di applicare in modo forzato la coerenza del design e del brand.

Post del blog: Ulteriori dettagli sulla transizione a Manifest V3

Pubblicato il

Abbiamo definito le tempistiche del ritiro di Manifest V2. Anche le tempistiche del supporto di Manifest V2 sono state aggiornate in modo da riflettere queste informazioni.

Aggiornamento di Documenti: problemi noti durante la migrazione a Manifest V3

Pubblicato il

Abbiamo creato un elenco di funzionalità principali attualmente in fase di sviluppo e bug aperti. L'obiettivo di questa pagina è aiutare gli sviluppatori a comprendere meglio lo stato attuale della piattaforma e le funzionalità a cui possono rivolgersi in vista del futuro.

Chrome Web Store: caricamento dell'immagine "riquadro promozionale grande" rimosso

Pubblicato il

Chrome Web Store ha rimosso l'interfaccia utente di caricamento "riquadro promozionale grande" dalla scheda Scheda dello Store degli articoli nella dashboard per sviluppatori. Questa modifica non influisce sull'esperienza dell'utente finale, in quanto queste immagini non sono state utilizzate nell'interfaccia utente consumer. Per maggiori dettagli, leggi questo post relativo alle estensioni chromium.

Chrome 106: Consenti alle pagine sugli URL file:// di accedere alle risorse accessibili dal web

Pubblicato il

Anche origini opache come iframe con sandbox e importazione dinamica dovrebbero essere in grado di accedere alle risorse accessibili dal web, secondo crbug.com/1219825#c11.

Chrome 106: corretto il bug che consentiva di argomenti finali errati su alcune funzioni API asincrone

Pubblicato l'

In precedenza, la chiamata alle API asincrone di Manifest V3 poteva fornire un argomento finale non valido e Chrome non generava errori. Con questa correzione, Chrome ora genera un errore e segnala l'assenza di una firma corrispondente. Gli sviluppatori sono invitati a controllare le proprie estensioni su Canary per verificare la presenza di eventuali errori nel caso in cui utilizzino accidentalmente la firma errata per una chiamata API che verrà interrotta dalla correzione del bug.

Post del blog: Rinnovamento delle analisi del Chrome Web Store

Pubblicato il

Chrome Web Store offre un'esperienza rinnovata per l'analisi degli articoli per la Dashboard per sviluppatori del Chrome Web Store. La nuova dashboard è più facile da capire a colpo d'occhio e riunisce le informazioni più utili in anticipo. Per ulteriori informazioni, leggi il post del blog.

Chrome 105: promesse per l'API Identity

Pubblicato il

Le funzioni nell'API Identity ora supportano le chiamate basate su promesse. Ciò include una leggera modifica alla piattaforma per identity.getAuthToken(), in cui il ritorno asincrono impostato su una chiamata basata su una promessa avrà "token" e "grantedScopes" come parametri su un singolo oggetto (a differenza della versione di callback che li riceve come argomenti separati per il callback).

Chrome 104: nuove API per le favicon per Manifest V3

Pubblicato l'

Le estensioni Manifest V3 ora possono accedere alle favicon utilizzando un nuovo pattern URL: chrome-extension://<id>/_favicon/, dove è l'ID dell'estensione. Questo sostituisce l'API chrome://favicons della piattaforma Manifest V2. Per ulteriori informazioni, consulta la documentazione dell'API Favicon.

Aggiornamento dei documenti: informativa commerciante/non commerciante dello sviluppatore

Pubblicato il

È stato aggiunto l'identificazione sviluppatore commerciante/non commerciante che informa gli sviluppatori di autodichiarare accuratamente il loro stato di commerciante/non commerciante.

Chrome 103: Wasm in Manifest V3 richiede wasm-unsafe-eval

Pubblicato il

Chrome non concede più le estensioni script-src: wasm-unsafe-eval per impostazione predefinita. Le estensioni che utilizzano WebAssembly ora devono aggiungere esplicitamente questa istruzione e questo valore a extension_pages nelle proprie dichiarazioni content_security_policy.

Chrome 103: la modifica delle scorciatoie MV3 ha effetto immediato

Pubblicato il

Quando modifichi la scorciatoia da tastiera di un'estensione Manifest V3 su chrome://extensions/shortcuts, ora gli aggiornamenti vengono applicati immediatamente. In precedenza, l'estensione doveva essere ricaricata prima che la modifica venisse applicata.

Chrome 102: script di contenuti dinamici nel mondo principale

Pubblicato il

Gli script di contenuti registrati dinamicamente ora possono specificare il mondo in cui verranno inseriti gli asset. Per informazioni dettagliate, visita la pagina scripting.registerContentScripts().

Chrome 102: nuovo campo manifest "optional_host_permissions"

Pubblicato il

Ora le estensioni Manifest V3 possono specificare la chiave optional_host_permissions in manifest.json. Ciò consente alle estensioni Manifest V3 di dichiarare pattern di corrispondenza facoltativi per gli host, proprio come le estensioni Manifest V2 potrebbero utilizzare la chiave optional_permissions.

Chrome 102: proprietà injectImmediately in scripting.executeScript()

Pubblicato il

chrome.scripting.executeScript() ora accetta una proprietà injectImmediately facoltativa nel suo argomento injection. Se presente e impostato su true, lo script verrà inserito nel target il prima possibile, anziché attendere document_idle. Tieni presente che ciò non garantisce che lo script venga inserito prima del caricamento della pagina, poiché la pagina continua a caricarsi mentre viene effettuata la chiamata API.

Chrome 102: supporto dell'API Omnibox in Manifest V3

Pubblicato il

Ora l'API Omnibox può essere utilizzata nelle estensioni basate su Service worker. In precedenza, alcuni dei metodi di questa API generavano chiamate a causa di dipendenze interne dalle funzionalità DOM.

Chrome 102: la valutazione di wasm-unsafe-eval consentita in Manifest V3 CSP

Pubblicato il

Le estensioni Manifest V3 ora possono includere wasm-unsafe-eval nelle dichiarazioni content_security_policy. Questa modifica consente alle estensioni Manifest V3 di utilizzare WebAssembly.

Chrome 102: nuova API storage.session

Pubblicato il

Ora le estensioni Manifest V3 possono utilizzare lo spazio di archiviazione della memoria storage.session .

Aggiornamento dei documenti: scoperta degli elementi del Chrome Web Store

Pubblicato il

Il rilevamento sul Chrome Web Store offre una panoramica del modo in cui gli utenti trovano gli elementi sul Chrome Web Store e del modo in cui i nostri editor selezionano gli elementi da mostrare.

Chrome 101: condizioni del dominio declarativeNetRequest migliorate

Pubblicato il

Le condizioni della regola declarativeNetRequest sono state aggiornate per consentire alle estensioni di indirizzare meglio le richieste in base ai domini "request" e "initiator" delle richieste. Le proprietà della condizione pertinenti sono initiatorDomains, excludedInitiatorDomains, requestDomains e excludedRequestDomains. Vedi anche questo thread di Chromium-extensions.

Chrome 100: risolto il problema relativo allo scripting.executeScript() nelle schede appena create

Risolto un problema di lunga data per cui la chiamata a scripting.executeScript() su una scheda o una finestra appena creata potrebbe non riuscire.

Chrome 100: la porta di messaggistica nativa mantiene attivo il service worker

Pubblicato il

La connessione a un host di messaggistica nativo utilizzando chrome.runtime.connectNative() nel service worker di un'estensione dovrebbe mantenerlo attivo finché la porta è aperta.

Chrome 100: omnibox.setDefaultSuggestion() supporta promesse e callback

Pubblicato l'

Il metodo omnibox.setDefaultSuggestion() ora restituisce una promessa o accetta un callback per consentire agli sviluppatori di determinare quando il suggerimento è stato impostato correttamente.

Chrome 100: supporto di i18n.getMessage() nei service worker delle estensioni

Pubblicato il

L'API chrome.i18n.getMessage() è ora supportata in contesti di service worker delle estensioni.

Chrome 99: match_origin_as_fallback in Canary

Pubblicato il

Ora gli script di contenuti possono specificare la chiave match_origin_as_fallback da inserire nei frame correlati a un frame corrispondente, inclusi i frame con URL about:, data:, blob: e filesystem:. Per informazioni dettagliate, consulta la documentazione sugli script di contenuti.

Chrome 99: supporto dei service worker di estensione per i file: schemi nella versione canary

Pubblicato il

Le estensioni Manifest V2 e Manifest V3 basate su service worker ora possono utilizzare l'API Fetch per richiedere URL di schema file:. Per accedere agli URL di schema file: è comunque necessario che l'utente attivi l'opzione "Consenti l'accesso agli URL dei file" per l'estensione nella pagina chrome://extensions.

Chrome 99: promessa del supporto per le API di messaggistica in Canary

Pubblicato il

Il supporto delle promesse è stato aggiunto a tabs.sendMessage, runtime.sendMessage e runtime.sendNativeMessage per le estensioni create per Manifest V3.

Aggiornamento dei documenti: documentazione relativa alla revisione di Chrome Web Store

Pubblicato il

È stata aggiunta una nuova pagina di riferimento che fornisce una panoramica della procedura di revisione del Chrome Web Store e spiega come viene gestita l'applicazione delle norme del programma per gli sviluppatori.

Chrome 98: scripting.executeScript() e scripting.insertCSS() accettano più file

Pubblicato il

I metodi executeScript() e insertCSS() dell'API Scripting ora accettano più file. In precedenza, questi metodi richiedevano un array con una singola voce di file.

Aggiornamento dei documenti: revisione degli aggiornamenti sulla risoluzione dei problemi relativi alle violazioni

Pubblicato il

La pagina Risoluzione dei problemi relativi alle violazioni del Chrome Web Store è stata aggiornata per fornire agli sviluppatori indicazioni più dettagliate sui motivi più comuni del rifiuto.

Chrome 96: supporto esteso delle promesse ad altre 27 API

Pubblicato il

Questa release contiene un numero notevolmente maggiore di aggiornamenti promessi rispetto a qualsiasi release precedente. Gli aggiornamenti includono API di estensioni generali e specifiche di ChromeOS. Per maggiori dettagli, espandi le sezioni seguenti.

API per le estensioni

Alcune API ora supportano le promesse in Manifest V3.

Inoltre, le API che utilizzano il prototipo ChromeSetting ora supportano anche le promesse. Le API seguenti sono interessate da questa modifica.

API ChromeOS

Chrome 96: script di contenuti dinamici

Pubblicato il

L'API chrome.scripting ora supporta la registrazione, l'aggiornamento, l'annullamento della registrazione e la ricezione di un elenco di script di contenuti in fase di runtime. In precedenza, gli script di contenuti potevano essere dichiarati in modo statico nel file manifest.json di un'estensione o inseriti in modo programmatico in fase di runtime con chrome.scripting.executeScript().

Aggiornamento di Documenti: cronologia del supporto di Manifest V2

Pubblicato il

Le tempistiche della transizione di Manifest da V2 a V3 sono state annunciate in questo post del blog ed è stata pubblicata una pagina della cronologia più dettagliata.

Chrome 96: autorizzazione dichiarativaNetRequestWithHostAccess

Pubblicato il

La nuova autorizzazione declarativeNetRequestWithHostAccess consente alle estensioni di usare l'API chrome.declarativeNetRequest sui siti per cui l'estensione dispone delle autorizzazioni host. In questo modo, inoltre, le estensioni Manifest V2 esistenti che utilizzano webRequest, webRequestBlocking e l'autorizzazione host specifica del sito possono eseguire la migrazione all'API chrome.declarativeNetRequest senza che l'utente debba approvare nuove autorizzazioni.

Chrome 95: inserire script direttamente nelle pagine

Pubblicato il

Il metodo executeScript() dell'API chrome.scripting ora può inserire script direttamente nel mondo principale di una pagina. In precedenza, le estensioni potevano essere inserite direttamente nel mondo isolato dell'estensione. Per ulteriori informazioni su mondi isolati, consulta la documentazione sugli script di contenuti.

Chrome 95: promette il supporto per l'API Storage

Pubblicato il

I metodi nella versione Manifest V3 dell'API chrome.storage ora restituiscono promesse.

Aggiornamento delle norme: applicazione della verifica in due passaggi

Pubblicato il

Il post del blog sull'aggiornamento delle norme pubblicato il 29 giugno 2021 è stato aggiornato per correggere le tempistiche di deployment della verifica in due passaggi.

Chrome 94: modifiche al set di regole statiche relative alle richieste nette dichiarative

Pubblicato il

Il chrome.declarativeNetRequest ora supporta la specifica di fino a 50 set di regole statici (MAX_NUMBER_OF_STATIC_RULESETS) e l'attivazione di fino a 10 set di regole (MAX_NUMBER_OF_ENABLED_STATIC_RULESETS) alla volta.

Chrome 93: supporto per l'isolamento multiorigine

Pubblicato il

Le estensioni Manifest V2 e Manifest V3 ora possono attivare l'isolamento multiorigine. Questa funzionalità limita le risorse multiorigine che possono caricare le pagine di un'estensione e consente l'uso di funzionalità della piattaforma web di basso livello come SharedArrayBuffer. L'attivazione sarà obbligatoria a partire da Chrome 95.

Aggiornamento delle norme: norme del programma per gli sviluppatori aggiornate

Pubblicato il

Le Norme del programma per gli sviluppatori del Chrome Web Store sono state aggiornate con chiarimenti in merito a tattiche di installazione ingannevoli, spam e norme relative ai contenuti ripetitivi. Questo aggiornamento include anche un nuovo requisito di verifica in due passaggi per la pubblicazione sul Chrome Web Store. Per ulteriori informazioni, leggi il post del blog.

Post del blog: azioni delle estensioni in Manifest V3

Pubblicato il

Le estensioni di Chrome hanno avuto le API chrome.browserAction e chrome.pageActions per anni, ma Manifest V3 ha sostituito entrambe con un'API chrome.actions generica. Questo post esplora la storia di queste API e cosa è cambiato in Manifest V3. Leggi il post.

Post del blog: introduzione di chrome.scripting

Pubblicato l'

L'API chrome.scripting è una nuova API Manifest V3 incentrata sullo scripting. In questo post, analizziamo le motivazioni di questo cambiamento e daremo un'occhiata più da vicino alle nuove funzionalità. Leggi il post.

Chrome 92: supporto dei service worker di modulo

Pubblicato il

Chrome ora supporta i moduli JavaScript nei service worker. Per specificare un modulo nel file manifest:

"background": {
  "service_worker": "script.js",
  "type": "module"
}

Lo script worker viene caricato come modulo ES, che ti consente di utilizzare la parola chiave import nello script worker per importare altri moduli.

Chrome 91: chrome.action.getUserSettings()

Pubblicato il

Il nuovo metodo chrome.action.getUserSettings() consente alle estensioni di determinare se l'utente ha bloccato l'estensione sulla barra degli strumenti principale.

Chrome 90: chrome.scripting.removeCSS()

Pubblicato il

Il nuovo metodo chrome.scripting.removeCSS() consente alle estensioni di rimuovere i CSS precedentemente inseriti tramite chrome.scripting.insertCSS(). Sostituisce chrome.tabs.removeCSS().

Chrome 90: restituzione di promesse da scripting.executeScript()

Pubblicato il

Ora chrome.scripting.executeScript() supporta la restituzione delle promesse. Se il valore risultante dell'esecuzione dello script è una promessa, Chrome attende che la promessa si stabilizzi e restituirà il valore risultante.

Chrome 90: i risultati di chrome.scripting.executeScript() includono frameId

Pubblicato il

I risultati restituiti da chrome.scripting.executeScript() ora includono il frameId. La proprietà frameId indica il frame da cui proviene il risultato, consentendo alle estensioni di associare facilmente i risultati ai singoli frame quando vengono inseriti in più frame.

Chrome 89: nuova API per la gestione dei gruppi di schede

Pubblicato il

La nuova API chrome.tabGroups e le nuove funzionalità di chrome.tabs consentono alle estensioni di leggere e manipolare i gruppi di schede. Richiede Manifest V3.

Chrome 89: autorizzazioni personalizzabili per le risorse accessibili sul web

Pubblicato il

Le definizioni delle risorse accessibili sul web nel file manifest V3 sono state modificate per consentire alle estensioni di limitare l'accesso alle risorse in base all'origine o all'ID estensione del richiedente.

Post del blog: strumento di conversione dei file manifest delle estensioni

Pubblicato il

Il team per le estensioni di Chrome ha reso open source l'"estensione Manifest Converter", uno strumento Python che automatizza alcuni aspetti meccanici della conversione delle estensioni in Manifest V3. Leggi il post del blog dell'annuncio e scaricalo da GitHub.

Chrome 88: disponibilità generale di Manifest V3

Pubblicato il

Manifest V3 è un aggiornamento importante della piattaforma di estensioni; consulta la Panoramica di Manifest V3 per un riepilogo delle funzionalità nuove e modificate. Per il momento le estensioni possono continuare a utilizzare Manifest V2, ma questa funzionalità verrà eliminata gradualmente in futuro. Ti consigliamo vivamente di utilizzare Manifest V3 per le nuove estensioni e di iniziare la migrazione delle estensioni esistenti a Manifest V3 il prima possibile.