En juillet, nous avons lancé une nouvelle série d'articles de blog pour vous tenir informé du développement des extensions. Grâce à vos précieux commentaires et à notre collaboration continue avec d'autres fournisseurs de navigateurs du WebExtensions Community Group, nous continuons à améliorer les API d'extension et à améliorer la cohérence entre les navigateurs.
Bienvenue dans l'édition d'octobre ! Dans ce post, nous allons passer en revue certaines modifications apportées par l'équipe chargée des extensions Chrome au cours des derniers mois, ainsi que certaines nouvelles fonctionnalités qui sortiront dans le courant de l'année. Voyons cela plus en détail.
Nouvelles API et fonctionnalités d'extension
Dans cette section, nous présentons quelques lancements importants d'API, nous passons rapidement en revue d'autres améliorations apportées à l'API et les versions à venir. Tous les lancements sont actuellement disponibles dans la dernière version bêta. Pour en savoir plus, consultez le calendrier des versions de Chromium.
Points forts
Problèmes connus résolus
L'équipe d'extension a travaillé activement à la résolution des problèmes de stabilité de Manifest V3. De nombreuses améliorations ont été apportées à Chrome 116 qui nous ont permis de réaliser d'importants progrès afin de combler le manque de fonctionnalités entre Manifest V2 et V3. Dans Chrome 120, nous aurons fini de corriger toutes les failles prioritaires de la plate-forme et de supprimer tous les bugs critiques décrits sur la page des problèmes connus. Toutes les fonctionnalités sont actuellement disponibles dans Chrome 120 Canary, à l'exception de la prise en charge de fileHandler pour ChromeOS Lacros et de l'API userScripts, qui sera disponible dans le courant du mois. Pour en savoir plus, consultez la nouvelle page Problèmes connus.
Amélioration de la stabilité de Service Worker
Les problèmes de stabilité liés au service worker ont été résolus. Dans Chrome 116, nous avons ajouté de puissantes commandes keep-alive aux API d'extension qui affichent une invite utilisateur et amélioré la compatibilité avec WebSockets (consultez le tutoriel Utiliser WebSockets dans les extensions). À partir de Chrome 118, un service worker reste actif pendant une session active de l'API Debugger.
Pour en savoir plus, consultez nos nouvelles conseils concernant les service workers. Si vos utilisateurs rencontrent toujours des problèmes de stabilité liés aux service workers dans les versions de Chrome après la version 119, veuillez nous en informer.
Sécurité accrue
Auparavant, la navigation vers certaines URL chrome://
avec tabs.update()
, tabs.create
et windows.create()
générait une erreur ou faisait planter Chrome. De plus, tabs.update()
n'a pas pu ouvrir une URL JavaScript. Dans Chrome 117, nous avons augmenté le nombre d'URL chrome://
compatibles. Le blocage des URL JavaScript s'applique désormais également à toutes les méthodes d'API d'extension.
Dans Chrome 117, les utilisateurs recevront des notifications proactives sur la page "Extensions Chrome" si une extension qu'ils ont installée n'est plus disponible sur le Chrome Web Store. Cela peut se produire si le développeur annule la publication de l'extension, si elle est retirée pour non-respect des règles ou si elle est identifiée comme contenant un logiciel malveillant. Pour en savoir plus, consultez l'article Déploiement du contrôle de sécurité sur la page chrome://extensions.
Dans Chrome 118, les extensions ne seront pas autorisées à accéder aux URL file://
à l'aide des API chrome.tabs
et chrome.windows
, sauf si l'option "Autoriser l'accès aux URL de fichiers" est activée sur la page d'informations de l'extension. Consultez la discussion WECG.
Autres lancements d'API
- API Runtime:à partir de Chrome 116, vous pouvez utiliser
runtime.getContexts()
pour récupérer des informations sur les contextes actifs. Par exemple, vous pouvez vérifier si un document hors écran est actif. - API Side Panel Dans Chrome 116, vous pouvez utiliser
sidepanel.open()
pour ouvrir le panneau latéral de l'extension par programmation en réponse à un geste de l'utilisateur, comme un clic sur un menu contextuel. - API TabCapture : possibilité d'appeler
getMediaStreamId()
à partir du service worker d'extension et d'obtenir un objetMediaStream
à partir d'un ID de flux dans un document hors écran dans Chrome 116. Consultez l'article Enregistrement audio et capture d'écran pour obtenir des exemples. - API déclarativeNetRequest:la valeur par défaut de la propriété
isUrlFilterCaseSensitive
a été remplacée parfalse
dans Chrome 118.
À venir...
Avec Chrome 120, nous prévoyons de traiter tous les éléments restants sur la page des problèmes connus. Nous prévoyons également d'ajouter les fonctionnalités suivantes:
- L'API UserScripts permettra aux gestionnaires de scripts utilisateur de coordonner quand et comment injecter un ensemble de scripts utilisateur dans les pages Web. Pour en savoir plus, consultez la proposition WECG.
- L'API ReadingList permettra aux développeurs de créer, lire, mettre à jour et supprimer les métadonnées situées dans le panneau "Liste de lecture" du panneau latéral. Regardez la vidéo Nouveautés des extensions Chrome pour prendre connaissance de l'annonce.
- Suite aux commentaires du groupe de la communauté des extensions Web, nous augmentons considérablement la limite d'ensembles de règles statiques activés de 10 à 50. En outre, nous augmentons le nombre total d'ensembles de règles statiques autorisés de 50 à 100. Cette fonctionnalité est actuellement disponible en version Canary.
- L'API File Handling sera disponible pour les extensions ChromeOS à partir de ChromeOS 120. Elle permet aux extensions d'ouvrir des fichiers avec les types MIME et les extensions spécifiés de la même manière que la gestion de fichiers sur une plate-forme Web.
- Les extensions pourront utiliser l'API Push Web via
self.registration.pushManager.subscribe()
sans afficher de notification visible par l'utilisateur en définissantuserVisibleOnly
surfalse
. Les notifications push deviendront ainsi une alternative plus fluide aux WebSockets dans les service workers (MV3) pour la communication client-serveur asynchrone. Pour en savoir plus, consultez le bug de Chromium et la discussion de WECG.
Consultez régulièrement la page Nouveautés des extensions pour être informé de la disponibilité de ces fonctionnalités dans la version bêta de Chrome.
Mises à niveau de la documentation
Nous avons également amélioré et complété notre documentation. Veuillez continuer à poser des questions sur chromium-group et signaler des problèmes de documentation.
Points forts
- Nous avons remanié la page de destination des exemples. Vous pouvez désormais filtrer par API, autorisation et type, ce qui facilite la localisation d'échantillons spécifiques. Cette amélioration est le fruit d'une collaboration avec Xuezhou Dai, notre stagiaire pendant l'été de code. Découvrez son expérience dans cet article de blog.
- L'article Utiliser votre compte Google Analytics avec le Chrome Web Store explique comment afficher Google Analytics 4 pour votre fiche Chrome Web Store, en complément des données fournies par le tableau de bord du développeur. Ce guide explique comment activer Google Analytics, contrôler les performances des annonces et suivre les conversions, et autoriser d'autres comptes à accéder aux données Google Analytics.
- Nous avons publié un nouveau guide sur le fonctionnement des cookies et des API de stockage Web dans les extensions Chrome. Vous y trouverez tout ce que vous devez savoir sur la Privacy Sandbox en tant que développeur d'extensions.
- Nous avons publié de nouveaux articles expliquant comment intégrer des tests dans vos projets d'extension: les tests unitaires des extensions Chrome et les tests de bout en bout des extensions contiennent des conseils généraux et des bonnes pratiques dans différents frameworks populaires. Pour suivre un tutoriel pratique, consultez Tester les extensions Chrome avec Puppeteer.
Plus d'actualités
- Nous avons réécrit les conseils sur l'API Declarative Net Request afin de mieux comprendre comment implémenter des ensembles de règles déclaratives.
- Nous avons ajouté des conseils pour migrer du code hébergé à distance vers Manifest V3. De plus, pour réduire le risque de rencontrer des problèmes lors de la publication, nous proposons des stratégies pour publier votre extension Manifest V3 par étapes.
- Découvrez comment vous connecter à un WebSocket dans le service worker de votre extension.
- Nous avons développé notre guide d'obtention de l'aide pour y inclure des instructions plus détaillées sur la manière de signaler un bug, de suivre les problèmes existants, de demander de nouvelles fonctionnalités, et bien plus encore.
À venir...
- Documentation de référence et tutoriel sur l'API User Scripts
- Tutoriel et exemples Firebase
- Documentation de référence de l'API ReadingList.
Refonte du Chrome Web Store COLOR
Plus tôt ce mois-ci, nous avons annoncé que, comme annoncé lors de Google I/O, nous avions annoncé que le Chrome Web Store avait été remanié en avant-première. Essayez par vous-même ! https://chromewebstore.google.com/. Voici quelques changements notables:
- Augmentation de la liste des catégories, passant d'une liste de onze à une nouvelle liste de 17 catégories sur trois.
- Amélioration de la saisie semi-automatique dans la recherche
- Les captures d'écran s'affichent désormais avec une qualité nettement supérieure. Si vous ne l'avez pas déjà fait, vous pouvez importer des captures d'écran au format 1 280 x 800.
- Les réponses aux questions figurant dans l'onglet "Assistance" affichent désormais des nouvelles lignes.
- Lorsque vous répondez aux avis des utilisateurs et aux questions d'assistance, un badge "Développeur" s'affiche désormais à côté de votre nom.
- Vous pouvez fournir aux utilisateurs un lien direct vers la page des avis en ajoutant "/reviews" à la fin de l'URL de votre article Play Store (par exemple,
https://chromewebstore.google.com/detail/_EXTENSION_ID_/reviews
).
Merci pour tous vos commentaires sur le groupe Chromium-google. N'hésitez pas à participer à la discussion ou à envoyer vos commentaires directement à l'équipe CWS via l'élément de menu Envoyer des commentaires:
Vous pouvez également envoyer un formulaire d'auto-désignation pour figurer dans la collection "Le choix des rédactions". Restez à l'affût des améliorations qui seront bientôt disponibles dans le tableau de bord du développeur.
💡 Le saviez-vous ?
- Voici une nouvelle vidéo sur le débogage des extensions Chrome. Il aborde de nombreux sujets que vous connaissez peut-être déjà, mais il présente également quelques astuces utiles pour utiliser les outils de développement dans les extensions.
- Vous devez désormais fournir des règles de confidentialité pour chaque extension. Auparavant, vous ne pouviez ajouter qu'une seule règle de confidentialité par compte de développeur, mais ce n'était pas pratique si vous disposiez de quelques extensions dans un seul compte de développeur. Cette nouvelle interface est disponible dans l'onglet Confidentialité de votre élément dans le tableau de bord du développeur. Par conséquent, les règles de confidentialité au niveau du compte ne sont plus acceptées.
Nous contacter 🙌
Nous avons continué à contacter la communauté des développeurs d'extensions par le biais d'entretiens individuels, en lançant de nouveaux programmes et en participant à des sommets. Voici quelques points à retenir:
- Le programme Experts Google Developers a été lancé en août. Plus d'une douzaine de nouvelles GDE dédiées aux extensions Chrome, issues du monde entier, nous ont fait part de leurs commentaires très utiles. Le programme vit une période passionnante !
- Nous avons participé au TPAC (la conférence annuelle du W3C) dans le cadre du Web Extensions Community Group et avons rencontré des représentants de Firefox et Safari, ainsi que plusieurs membres de la communauté. Nous avons fait d'importants progrès sur plusieurs sujets, comme l'adoption d'API d'extension plus cohérentes, le travail sur une spécification et la création d'une nouvelle suite de tests en s'appuyant sur les tests de la plate-forme Web. Consultez les minutes complètes dans le dépôt WECG.
- La semaine dernière, l'équipe d'extensions a participé au Sommet des développeurs consacré au filtrage des annonces à Amsterdam. Plusieurs d'entre vous ont été rencontrés lors d'un café qu'ils ont organisé avant la semaine du sommet et pendant les heures de bureau le vendredi.
Même si vous n'avez pu assister à aucun de ces événements, vous pouvez continuer à participer en posant des questions sur le groupe Google chromium-extensions, en suivant les discussions des navigateurs partenaires sur le WECG et en signalant tout problème lié à la documentation.
Merci encore de faire partie de la communauté des développeurs d'extensions !