Développer
Après avoir lu la section Premiers pas, consultez ce guide pour découvrir les composants des extensions, leurs fonctionnalités dans Manifest V3 et comment les combiner. Familiarisez-vous tout d'abord avec les fonctionnalités des extensions: Découvrez ensuite comment combiner ces fonctionnalités à l'aide de la section Concepts fondamentaux des extensions.
Concevoir l'interface utilisateur
La plupart des extensions nécessitent une interaction de l'utilisateur pour fonctionner. La plate-forme des extensions propose plusieurs méthodes pour ajouter des interactions à votre extension. Ces méthodes incluent l'affichage de pop-ups déclenchés à partir de la barre d'outils Chrome, des panneaux latéraux, des menus contextuels, etc.
Panneau latéral
Utilisez l'API
chrome.sidePanel
pour héberger du contenu dans le panneau latéral du navigateur, à côté du contenu principal d'une page Web.
Action
Permet de contrôler l'affichage de l'icône d'une extension dans la barre d'outils.
Menus
Ajoutez des éléments au menu contextuel de Google Chrome.
Contrôler le navigateur
Les API d'extension Chrome vous permettent de modifier le fonctionnement de votre navigateur.
Remplacer les pages et les paramètres Chrome
Les paramètres de remplacement permettent aux extensions de remplacer les paramètres Chrome sélectionnés. En outre, les extensions peuvent utiliser des pages de remplacement HTML pour remplacer une page normalement fournie par Google Chrome. Elles peuvent remplacer le gestionnaire de favoris, l'onglet "Historique" ou le nouvel onglet.
Étendre les outils de développement
Les extensions DevTools ajoutent des fonctionnalités aux outils pour les développeurs Chrome en accédant aux API d'extension propres à ces outils via une page "Outils de développement" ajoutée à l'extension. Vous pouvez également utiliser l'API
chrome.debugger
pour appeler le protocole de débogage à distance de Chrome. Associez-le à un ou plusieurs onglets pour instrumenter les interactions réseau, déboguer JavaScript, modifier le DOM, etc.
Afficher les notifications
L'API
chrome.notifications
vous permet de créer des notifications à l'aide de modèles et de les afficher dans la barre d'état système de l'utilisateur.
Gérer l'historique
Utilisez l'API
chrome.history
pour interagir avec l'enregistrement des pages consultées du navigateur et l'API chrome.browsingData
pour gérer d'autres données de navigation. Utilisez chrome.topSites
pour accéder aux sites les plus consultés.
Contrôler les onglets et les fenêtres
Utilisez des API telles que
chrome.tabs
, chrome.tabGroups
et chrome.windows
pour créer, modifier et organiser le navigateur de l'utilisateur.
Ajouter des raccourcis clavier
Utilisez l'API
chrome.commands
pour ajouter des raccourcis clavier qui déclenchent des actions dans votre extension. Par exemple, vous pouvez ajouter un raccourci pour ouvrir l'action du navigateur ou envoyer une commande à l'extension.
Authentifier les utilisateurs
Utilisez l'API
chrome.identity
pour obtenir des jetons d'accès OAuth 2.0.
Gérer les extensions
L'API
chrome.management
permet de gérer la liste des extensions installées et en cours d'exécution. Il est particulièrement utile pour les extensions qui remplacent la page "Nouvel onglet" intégrée.
Fournir des suggestions
L'API
chrome.omnibox
vous permet d'enregistrer un mot clé dans l'omnibox (barre d'adresse) de Google Chrome.
Mettre à jour les paramètres de Chrome
L'API
chrome.privacy
vous permet de contrôler l'utilisation des fonctionnalités de Chrome qui peuvent affecter la confidentialité des données des utilisateurs. Consultez également l'API chrome.proxy
pour gérer les paramètres proxy de Chrome.
Gérer les téléchargements
Utilisez l'API
chrome.downloads
pour programmer le lancement, la surveillance, la manipulation et la recherche de téléchargements.
Utiliser les favoris et la liste de lecture
Utilisez les API
chrome.bookmarks
et chrome.readingList
pour créer, organiser et manipuler ces listes.
Contrôler le Web
Modifiez de façon dynamique le contenu et le comportement des pages Web. Vous pouvez contrôler et modifier le Web en injectant des scripts, en interceptant des requêtes réseau et en utilisant des API Web pour interagir avec les pages Web.
Injecter du code JavaScript et CSS
Les scripts de contenu sont des fichiers exécutés dans le contexte de pages Web. Ils utilisent le Document Object Model (DOM) standard pour lire les détails des pages Web consultées par le navigateur, les modifier et transmettre des informations à leur extension parente.
Accéder à l'onglet actif
L'autorisation
"activeTab"
accorde à une extension un accès temporaire à l'onglet actuellement actif lorsque l'utilisateur appelle l'extension, par exemple en cliquant sur son action. L'accès à l'onglet est actif lorsque l'utilisateur se trouve sur la page en question et est révoqué s'il quitte l'onglet ou le ferme.
Contrôler les requêtes Web
Utilisez les API
chrome.declarativeNetRequest
, chrome.webRequest
et chrome.webNavigation
pour observer, bloquer et modifier les requêtes réseau.
Enregistrement audio et capture d'écran
Découvrez différentes approches pour enregistrer des contenus audio et vidéo à partir d'un onglet, d'une fenêtre ou d'un écran à l'aide des API de plates-formes Web telles que
chrome.tabCapture
ou getDisplayMedia()
.
Modifier les paramètres du site Web
Utilisez l'API
chrome.contentSettings
pour déterminer si les sites Web peuvent utiliser des fonctionnalités telles que les cookies, JavaScript et les plug-ins. Plus généralement, les paramètres de contenu vous permettent de personnaliser le comportement de Chrome au niveau de chaque site, et non plus de manière globale.
Concepts fondamentaux
Les API de plate-forme Web et d'extension vous permettent de créer des fonctionnalités plus complexes en combinant différents composants d'UI et fonctionnalités de plate-forme d'extension.
Service workers
Un service worker d'extension (service-worker.js) est un script basé sur des événements que le navigateur s'exécute en arrière-plan. Il est souvent utilisé pour traiter des données, coordonner des tâches dans différentes parties d'une extension et en tant que gestionnaire d'événements pour l'extension.
Autorisations
Comprendre les autorisations: comment elles fonctionnent et quand éviter de les demander lorsqu’elles ne sont pas nécessaires.
Filtrage du contenu
Il existe différentes manières de mettre en œuvre le filtrage du réseau et du contenu dans les extensions Chrome. Découvrez les fonctionnalités de filtrage de contenu disponibles pour les extensions, ainsi que les différentes approches, techniques et API de filtrage que les extensions Chrome peuvent utiliser.
Texte
Souvent, les scripts de contenu ou d'autres pages d'extensions doivent envoyer des informations au service worker de l'extension ou en recevoir. Dans ce cas, chaque côté peut écouter les messages envoyés par l'autre côté et répondre sur le même canal.
Messagerie native
Activez vos extensions pour échanger des messages avec des applications natives.
Éviter le code hébergé à distance
Dans Manifest V3, les extensions doivent regrouper tout le code qu'elles utilisent dans l'extension elle-même. Pour ce faire, vous disposez de différentes stratégies.
Stockage
Les extensions Chrome disposent d'une API Storage spécialisée, disponible pour tous leurs composants. Il comprend quatre zones de stockage distinctes pour des cas d'utilisation spécifiques et un écouteur d'événements qui suit chaque mise à jour des données.
Documents hors écran
Les service workers ne disposent pas d'un accès DOM. L'API Offscreen permet à l'extension d'utiliser des API DOM dans un document masqué sans interrompre l'expérience utilisateur en ouvrant de nouvelles fenêtres ou de nouveaux onglets.
Isolation multi-origine
L'isolation multi-origine permet à une page Web d'utiliser des fonctionnalités puissantes telles que
SharedArrayBuffer
. Une extension peut activer l'isolation multi-origine en spécifiant les valeurs appropriées pour les clés "cross_origin_embedder_policy"
et "cross_origin_opener_policy"
du fichier manifeste.