Novità di Chrome 88

Stiamo iniziando l'implementazione della versione stabile di Chrome 88.

Tieni presente quanto segue:

Sono Pete LePage, lavoro e lavoro da casa, scopriamo le novità di Chrome 88 per gli sviluppatori.

Manifest V3

Chrome 88 ora supporta le estensioni create con Manifest V3, che puoi caricare sul Chrome Web Store. Manifest V3 è una nuova piattaforma di estensioni che, per impostazione predefinita, rende le estensioni di Chrome più sicure, performanti e nel rispetto della privacy.

Ad esempio, non consente il codice ospitato in remoto, il che aiuta i revisori del Chrome Web Store a comprendere meglio i rischi che comporta un'estensione. Inoltre, dovrebbe consentirti di aggiornare le estensioni più velocemente.

Introduce i service worker in sostituzione delle pagine in background. Poiché i service worker risiedono nella memoria solo quando necessario, le estensioni utilizzeranno meno risorse di sistema.

Per offrire agli utenti maggiore visibilità e controllo sul modo in cui le estensioni utilizzano e condividono i loro dati, in una versione futura adotteremo un nuovo flusso di installazione che consente agli utenti di trattenere autorizzazioni sensibili al momento dell'installazione.

Visita la pagina developer.chrome.com per informazioni dettagliate e scopri come eseguire la migrazione della tua estensione attuale a Manifest V3.


Proprietà aspect-ratio CSS

Di solito, solo alcuni elementi hanno proporzioni, ad esempio le immagini. Nel caso di questi elementi, se viene specificata solo la larghezza o l'altezza, l'altro viene calcolato automaticamente utilizzando le proporzioni intrinseche.

<!-- Height is auto-computed from width & aspect ratio -->
<img src="..." style="width: 800px;">

In Chrome 88, la proprietà aspect-ratio consente di specificare esplicitamente un rapporto di aspetto, attivando un comportamento simile.

.square {
  aspect-ratio: 1 / 1;
}

Puoi anche utilizzare il miglioramento progressivo per verificare se è supportato nel browser e applicare un fallback, se necessario. Poi, con il nuovo selettore not CSS 4, puoi rendere il codice un po' più chiaro.

.square {
  aspect-ratio: 1 / 1;
}

@supports not (aspect-ratio: 1 / 1) {
  .square {
    height: 4rem;
    width: 4rem;
  }
}

Ringraziamo Jen Simmons per aver dimostrato che il problema è supportato nell'ultima anteprima tecnica di Safari, quindi presto dovremmo vederlo in Safari. Inoltre, dai un'occhiata alla demo di Una per vederla in azione.

Forte limitazione dei timer JS concatenati

Chrome 88 limiterà notevolmente i timer JavaScript concatenati per le pagine nascoste in determinate condizioni. Ciò ridurrà l'utilizzo della CPU, che a sua volta ridurrà anche l'utilizzo della batteria. Esistono alcuni casi limite in cui ciò cambia il comportamento, ma i timer vengono spesso utilizzati nei casi in cui un'API diversa sarebbe più efficiente e più affidabile.

Era piuttosto pesante in termini di gergo e un po' ambiguo, quindi leggi l'articolo di Jake su Forte limitazione dei timer JS concatenati a partire da Chrome 88 per tutti i dettagli.

Fatturazione di Play nell'Attività web attendibile

Ora puoi usare Fatturazione Play nell'Attività web attendibile per vendere beni digitali e abbonamenti usando la nuova API Digital Goods. È disponibile come prova dell'origine in Chrome 88 su Android e prevediamo che la prova dell'origine verrà estesa a ChromeOS nella prossima release.

Dopo aver configurato gli account, aggiorna la tua Attività web attendibile per attivare la fatturazione di Google Play e creare i tuoi prodotti digitali in Play Console. Poi, nella PWA, aggiungi il token della prova dell'origine e tutto è pronto per aggiungere il codice per verificare gli acquisti esistenti, eseguire query sugli acquisti disponibili e fare nuovi acquisti.

// Get list of potential digital goods

const itemService =
  await window.getDigitalGoodsService("https://play.google.com/billing");

const details =
  await itemService.getDetails(['ripe_bananas', 'walnuts', 'pecans' ]);

Adriana e Andre illustrano più nel dettaglio la loro discussione sul Chrome Dev Summit: Novità per le app web su Play oppure consulta la docs.

E altro ancora

E ovviamente c'è molto altro.

  • Per la conformità a una modifica dello standard HTML, gli anchor tag con target="_blank" ora sottintendono rel="noopener" per impostazione predefinita. Ciò contribuisce a evitare attacchi di tab napping.
  • La maggior parte dei sistemi operativi abilita l'accelerazione del mouse per impostazione predefinita, ma questo può essere un problema per alcuni giochi. In Chrome 88, l'API Pointer Lock consente di disattivare l'accelerazione del mouse. Ciò significa che lo stesso movimento fisico, lento o veloce, comporta la stessa rotazione, offrendo un'esperienza di gioco migliore e una maggiore precisione.
  • Inoltre, addEventListener ora offre un'opzione di interruzione dell'indicatore. La chiamata a abort() rimuove il listener di eventi, semplificando l'arresto dei listener di eventi quando non sono più necessari.

Per approfondire

Vengono trattati solo alcuni dei punti salienti. Controlla i link riportati di seguito per ulteriori modifiche in Chrome 88.

Abbonati

Se vuoi tenerti al corrente sui nostri video, iscriviti al nostro canale YouTube degli sviluppatori di Chrome e riceverai una notifica via email ogni volta che verrà lanciato un nuovo video.

Mi chiamo Pete LePage e non appena uscirà Chrome 89 sarò qui per dirvi le novità di Chrome.