Autres options de distribution des extensions

Toutes les extensions Chrome doivent être distribuées directement à partir du Chrome Web Store ou à l'aide du les mécanismes de sécurité décrits ci-dessous. Le non-respect de l'une de ces méthodes de distribution constitue une cas de non-respect des Règles relatives aux extensions Chrome pouvant entraîner la suppression de l'extension et/ou du logiciel et les distribuant pour être signalées comme des logiciels indésirables.

En général, les utilisateurs installent les extensions depuis le Chrome Web Store, mais vous pouvez l'extension s'installe par d'autres moyens. Voici deux cas typiques:

  • Une extension est associée à un autre logiciel et doit être installée. chaque fois que l'utilisateur installe cet autre logiciel.
  • Un administrateur réseau souhaite installer les mêmes extensions dans l'ensemble de son organisation.

Une extension qui n'est pas installée à partir du Chrome Web Store est appelée extension externe. Pour les développeurs qui souhaitent distribuer une extension dans le cadre du processus d'installation pour d'autres logiciels ou pour les administrateurs réseau qui souhaitent distribuer une extension dans toute leur organisation, Google Chrome est compatible avec les méthodes d'installation d'extension suivantes:

  • À l'aide d'un fichier JSON de préférences (Mac OS X et Linux uniquement)
  • Utiliser le Registre Windows (pour Windows uniquement)

Les deux méthodes permettent d'installer une extension hébergée sur un update_URL. Sous Windows et Mac, update_URL doit pointer vers le Chrome Web Store sur lequel l'extension doit être hébergée.

Le fichier de préférences sur Linux peut pointer vers votre propre serveur sur lequel vous hébergez l'extension. Le fichier JSON des préférences permet également d'installer une extension à partir d'un fichier d'extension .crx sur le l'ordinateur Linux de l'utilisateur.

Avant de commencer

Tout d'abord, publiez l'extension dans le Chrome Web Store ou empaquetez un fichier .crx et créez pour vérifier qu'il s'installe correctement.

Si vous effectuez l'installation à partir d'une URL de mise à jour, vérifiez que l'extension est correctement hébergée.

Avant de modifier le fichier de préférences ou le registre, tenez compte des points suivants:

  • L'emplacement prévu du fichier .crx de l'extension ou l'URL de mise à jour à partir de laquelle il se trouve diffusé
  • La version de l'extension (indiquée dans le fichier manifeste ou sur la page chrome://extensions)
  • L'ID de l'extension, indiqué sur la page chrome://extensions lorsque vous avez chargé la suite complète )

Les exemples suivants supposent que la version est 1.0 et que l'ID est aaaaaaaaaabbbbbbbbbbcccccccccc.

Utiliser un fichier de préférences

  1. Si vous effectuez l'installation à partir d'un fichier sous Linux, assurez-vous que le fichier d'extension .crx est disponible pour la machine sur laquelle vous souhaitez installer l'extension. (copiez-le dans un répertoire local ou sur un réseau par exemple, \\server\share\extension.crx ou /home/share/extension.crx.)
  2. Créez un fichier portant le nom suivant dans l'un des dossiers indiqués ci-dessous: aaaaaaaaaabbbbbbbbbbcccccccccc.json, où le nom du fichier (sans l'extension) correspond à l'ID de votre extension. L'emplacement dépend du système d'exploitation.

    Mac OS X:

    Pour un utilisateur spécifique: ~USERNAME/Library/Application Support/Google/Chrome/External Extensions/ Pour tous les utilisateurs: /Library/Application Support/Google/Chrome/External Extensions/

    Le fichier d'extension externe pour tous les utilisateurs n'est accessible en lecture que si chaque répertoire du chemin d'accès appartient à un propriétaire par l'utilisateur root, comporte le groupe admin ou wheel, et n'est pas accessible en écriture à tous les utilisateurs. Le chemin d'accès doit également être exempt de liens symboliques. Ces restrictions empêchent un utilisateur non privilégié de provoquer à installer pour tous les utilisateurs. Pour en savoir plus, consultez la section Dépannage.

    Linux :

    /opt/google/chrome/extensions/

    /usr/share/google-chrome/extensions/

    Remarque:Utilisez chmod si nécessaire pour vous assurer que aaaaaaaaaabbbbbbbbbbcccccccccc.json sont lisibles par tous.

  3. Linux uniquement: si vous effectuez l'installation à partir d'un fichier, spécifiez l'emplacement et la version de l'extension avec champs nommés "external_crx" et "external_version" dans le fichier créé ci-dessus.

    • Exemple :
    • json { "external_crx": "/home/share/extension.crx", "external_version": "1.0" }
    • Remarque:Vous devez échapper chaque \` character in the location. For example,\server\share\extension.crxwould be"\\server\share\extension.crx"`.
    • Si vous effectuez l'installation à partir d'une URL de mise à jour, spécifiez l'URL de mise à jour de l'extension avec le nom du champ "external_update_url".
    • Exemple d'installation à partir d'un fichier .crx local (Linux uniquement):
    • json { "external_update_url": "http://myhost.com/mytestextension/updates.xml" }
    • Exemple d'installation à partir du Chrome Web Store (Mac et Linux):
    • json { "external_update_url": "https://clients2.google.com/service/update2/crx" }
    • Si vous souhaitez installer l'extension uniquement pour certaines langues, vous pouvez lister les paramètres paramètres régionaux dans le nom de champ "supported_locale". Les paramètres régionaux peuvent spécifier des paramètres régionaux parents tels que "en", dans cette l'extension sera installée pour tous les paramètres régionaux anglais, tels que "en-US", "en-GB", etc. un autre paramètre régional de navigateur non compatible avec l'extension, l'extension seront désinstallées. Si "supported_locales" est manquante, l'extension sera installé pour tous les paramètres régionaux.
    • Exemple :
    • json { "external_update_url": "https://clients2.google.com/service/update2/crx", "supported_locales": [ "en", "fr", "de" ] }
  4. Enregistrez le fichier JSON.

  5. Lancez Google Chrome et accédez à chrome://extensions. vous devriez voir l'extension dans la liste.

Résolution des problèmes liés aux autorisations Mac OS

Sous macOS, les fichiers d'extensions externes de tous les utilisateurs ne sont lus que si les autorisations du système de fichiers empêcher les utilisateurs non privilégiés de le modifier. Si aucune extension externe n'est installée Chrome est lancé, il se peut qu'il y ait un problème d'autorisation avec les préférences pour les extensions externes . Pour vérifier si c'est le cas, procédez comme suit:

  1. Lancez le programme Console. Vous le trouverez sous /Applications/Utilitaires/Console.
  2. Si l'icône la plus à gauche de la console indique "Afficher la liste des journaux", cliquez dessus. Une deuxième colonne apparaît à gauche.
  3. Cliquez sur "Messages de la console". dans le volet de gauche.
  4. Recherchez la chaîne Can not read external extensions. En cas de problème de lecture des fichiers d'extension externes, un message d'erreur s'affiche. Rechercher un autre message d'erreur directement au-dessus, ce qui devrait expliquer le problème. Par exemple, si l'erreur suivante s'affiche: "Le chemin /Bibliothèque/Application Support/Google/Chrome appartient au mauvais groupe", vous devez utiliser chgrp ou la boîte de dialogue "Obtenir des infos" du Finder pour remplacer le propriétaire du groupe de l'annuaire par le Groupe d'administrateurs.
  5. Une fois le problème résolu, relancez Chrome. Vérifiez que l'extension externe est bien installée. Il est possible qu'une seule erreur d'autorisation empêche Chrome de détecter une deuxième erreur. Si le l'extension externe n'a pas été installée, répétez cette procédure jusqu'à ce qu'aucune erreur ne s'affiche dans le Google Cloud.

Utiliser le Registre Windows

  1. Recherchez ou créez la clé suivante dans le Registre: <ph type="x-smartling-placeholder">
      </ph>
    • Windows 32 bits: HKEY_LOCAL_MACHINE\Software\Google\Chrome\Extensions
    • Windows 64 bits: HKEY_LOCAL_MACHINE\Software\Wow6432Node\Google\Chrome\Extensions
  2. Sous la clé Extensions, créez une clé (dossier) portant le même nom que l'ID de votre (par exemple, aaaaaaaaaabbbbbbbbbbcccccccccc).
  3. Dans votre clé d'extension, créez une propriété "update_url" et définissez-la sur la valeur suivante: &quot;https://clients2.google.com/service/update2/crx&quot; (il pointe vers le fichier crx de votre extension dans Chrome Web Store):

    {
      "update_url": "https://clients2.google.com/service/update2/crx"
    }
    
  4. Lancez le navigateur et accédez à chrome://extensions. vous devriez voir l'extension dans la liste.

Mise à jour et désinstallation

Google Chrome analyse les entrées de métadonnées dans les préférences et le registre chaque fois que le navigateur et apporte les modifications nécessaires aux extensions externes installées.

Pour mettre à jour votre extension, mettez à jour le fichier, puis mettez à jour la version dans le les préférences ou le registre.

Pour désinstaller votre extension (si votre logiciel n'est pas installé, par exemple), supprimez vos préférences. (aaaaaaaaaabbbbbbbcccccccccc.json) ou aux métadonnées du registre.

Questions fréquentes

Cette section répond aux questions fréquentes concernant les extensions externes.

La méthodologie permettant une "préinstallation" restent compatibles avec Google Chrome à partir de M33 à partir de maintenant ?

Oui, mais uniquement en tant qu'installation à partir d'un update_URL du Chrome Web Store, et non d'un chemin d'accès à un fichier local.

Puis-je spécifier une URL en tant que chemin d'accès à l'extension externe ?

Oui, utiliser le fichier preferences JSON pour Mac OS X et Linux le registre de Windows. La doit être hébergée comme expliqué dans la section Hébergement. Dans le fichier de préférences, utilisez la méthode "external_update_url" de sorte qu'elle pointe vers un fichier manifeste de mise à jour contenant l'URL de votre . Dans le Registre Windows, utilisez le paramètre "update_url". .

Quelles sont les erreurs courantes lors de l'installation à l'aide du fichier de préférences ?

  • Ne pas spécifier le même ID ou la même version que ceux indiqués dans .crx
  • Le fichier .json (aaaaaaaaaabbbbbbbbbbcccccccccc.json) se trouve au mauvais emplacement ou présente un ID incorrect spécifié ne correspond pas à l'ID d'extension.
  • Erreur de syntaxe dans le fichier JSON (oubli de séparer les entrées par une virgule ou d'une virgule finale) quelque part)
  • L'entrée du fichier JSON pointe vers le mauvais chemin vers .crx (ou le chemin spécifié sans nom de fichier)
  • Barres obliques inverses dans le chemin d'accès UNC non échappées (par exemple, "\\server\share\file" est incorrect ; il devrait s'agir "\\\\server\\share\\extension").
  • Problèmes d'autorisation sur un partage réseau

Quelles sont les erreurs courantes lors de l'installation à l'aide du Registre ?

  • L'ID ou la version indiqués dans le Chrome Web Store ne sont pas identiques.
  • Clé créée au mauvais emplacement dans le registre
  • L'entrée du registre ne pointe pas vers le bon chemin d'accès au fichier .crx sur le Chrome Web Store
  • Problèmes d'autorisation sur un partage réseau

Comment mettre à jour mes binaires natifs et mon extension en même temps ?

Auparavant, lorsque les extensions hors Play Store étaient acceptées, il était possible d'avoir les binaires natifs et l'extension peut être mise à jour lors de l'étape de verrouillage. Toutefois, les extensions hébergées sur le Chrome Web Store sont mis à jour via le mécanisme de mise à jour de Chrome que les développeurs ne contrôlent pas. Les développeurs d'extensions doivent soyez prudent lorsque vous mettez à jour les extensions qui ont une dépendance sur le binaire natif (par exemple, les anciennes extensions à l'aide de NPAPI).

Que se passe-t-il si l'utilisateur désinstalle l'extension ?

Si l'utilisateur désinstalle l'extension via l'interface utilisateur, elle ne sera plus installée ni mise à jour sur chaque start-up. En d'autres termes, l'extension externe est ajoutée à la liste de blocage.

Comment quitter la liste de blocage ?

Si l'utilisateur désinstalle votre extension, vous devez respecter cette décision. Toutefois, si vous développeur) a désinstallé accidentellement votre extension via l'interface utilisateur, vous pouvez supprimer la balise de la liste de blocage en installant l'extension normalement via l'interface utilisateur, puis en la désinstallant.