Nouveautés de Chrome 88

Chrome 88 commence à être déployé dans la version stable.

Voici les informations à retenir :

Je m'appelle Pete LePage. Je travaille et filme depuis chez moi. Je vais vous présenter les nouveautés de Chrome 88 pour les développeurs.

Manifest V3

Chrome 88 est désormais compatible avec les extensions créées avec Manifest V3. Vous pouvez les importer sur le Chrome Web Store. Manifest V3 est une nouvelle plate-forme d'extensions qui améliore par défaut la sécurité, la performance et le respect de la vie privée des extensions Chrome.

Par exemple, il interdit le code hébergé à distance, ce qui aide les examinateurs du Chrome Web Store à mieux comprendre les risques qu'une extension présente. Cela devrait vous permettre de mettre à jour vos extensions plus rapidement.

Il introduit les service workers pour remplacer les pages en arrière-plan. Étant donné que les services ne résident en mémoire que lorsque cela est nécessaire, les extensions utilisent moins de ressources système.

Pour offrir aux utilisateurs une meilleure visibilité et un meilleur contrôle sur la façon dont les extensions utilisent et partagent leurs données, nous adopterons dans une prochaine version un nouveau flux d'installation qui leur permettra de refuser les autorisations sensibles au moment de l'installation.

Pour en savoir plus et découvrir comment migrer votre extension actuelle vers Manifest V3, consultez developer.chrome.com.


Propriété CSS aspect-ratio

En règle générale, seuls certains éléments ont un format, par exemple les images. Pour eux, si seule la largeur ou la hauteur est spécifiée, l'autre est calculée automatiquement à l'aide du format intrinsèque.

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

Dans Chrome 88, la propriété aspect-ratio vous permet de spécifier explicitement un format, ce qui permet un comportement similaire.

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

Vous pouvez également utiliser l'amélioration progressive pour vérifier si elle est compatible avec le navigateur et appliquer un remplacement si nécessaire. Ensuite, avec le nouveau sélecteur CSS 4 not, vous pouvez rendre votre code un peu plus clair.

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

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

Merci à Jen Simmons de nous avoir signalé que cette fonctionnalité est compatible avec la dernière version Preview technique de Safari. Nous devrions donc la voir bientôt dans Safari. Regardez la démonstration d'Una pour voir comment cela fonctionne.

Limitation importante des timers JavaScript en chaîne

Chrome 88 limitera fortement les timers JavaScript en série pour les pages masquées dans des conditions particulières. Cela permet de réduire l'utilisation du processeur, ce qui réduit également l'utilisation de la batterie. Dans certains cas particuliers, cela peut modifier le comportement, mais les minuteurs sont souvent utilisés là où une autre API serait plus efficace et plus fiable.

Ce paragraphe était assez jargonneux et un peu ambigu. Pour en savoir plus, consultez l'article de Jake sur le réglage strict des délais JavaScript en série à partir de Chrome 88.

Facturation Play dans l'activité Web fiable

Vous pouvez désormais utiliser Play Billing dans votre activité Web fiable pour vendre des biens et des abonnements numériques à l'aide de la nouvelle API Digital Goods. Il est disponible en version d'essai dans Chrome 88 sur Android. Nous prévoyons de l'étendre à ChromeOS dans la prochaine version.

Une fois vos comptes configurés, mettez à jour votre activité Web fiable pour activer la facturation Play, puis créez vos produits numériques dans la Play Console pour les développeurs. Ensuite, dans votre PWA, ajoutez votre jeton de test d'origine. Vous pouvez alors ajouter le code pour rechercher les achats existants, interroger les achats disponibles et effectuer de nouveaux achats.

// 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 et André en parlent plus en détail dans leur présentation lors du Sommet des développeurs Chrome : Nouveautés pour les applications Web sur Play. Vous pouvez également consulter la documentation.

Et bien plus encore

Et bien sûr, il y en a bien d'autres.

  • Pour se conformer à une modification de la norme HTML, les balises d'ancrage avec target="_blank" impliquent désormais rel="noopener" par défaut, ce qui permet d'éviter les attaques par vol de tabulation.
  • La plupart des systèmes d'exploitation activent l'accélération de la souris par défaut, mais cela peut poser problème pour certains jeux. Dans Chrome 88, l'API Pointer Lock vous permet de désactiver l'accélération de la souris. Cela signifie que le même mouvement physique, lent ou rapide, entraîne la même rotation, ce qui offre une meilleure expérience de jeu et une meilleure précision.
  • addEventListener accepte désormais un signal d'abandon comme option. L'appel de abort() supprime cet écouteur d'événements, ce qui permet de l'arrêter facilement lorsqu'il n'est plus nécessaire.

Documentation complémentaire

Il ne s'agit là que de quelques-uns des points clés. Consultez les liens ci-dessous pour en savoir plus sur les modifications apportées à Chrome 88.

S'abonner

Si vous souhaitez rester informé de nos vidéos, abonnez-vous à notre chaîne YouTube pour les développeurs Chrome. Vous recevrez alors une notification par e-mail chaque fois que nous lancerons une nouvelle vidéo.

Je m'appelle Pete LePage. Dès que Chrome 89 sera disponible, je serai là pour vous présenter les nouveautés de Chrome.