Optionen für die Verteilung alternativer Erweiterungen

Alle Chrome-Erweiterungen müssen entweder direkt aus dem Chrome Web Store oder über die unten beschriebenen Mechanismen bereitgestellt werden. Wenn Sie eine dieser Verteilungsmethoden nicht einhalten, gilt dies als Verstoß gegen die Richtlinie für Chrome-Erweiterungen. Dies kann dazu führen, dass die Erweiterung und/oder die Distribution der Software als unerwünschte Software gemeldet wird.

Normalerweise installieren Nutzer Erweiterungen aus dem Chrome Web Store, manchmal möchten Sie aber eine Erweiterung auf andere Weise installieren. Hier zwei typische Fälle:

  • Eine Erweiterung ist mit einer anderen Software verknüpft und sollte immer dann installiert werden, wenn der Nutzer diese Software installiert.
  • Ein Netzwerkadministrator möchte in seiner gesamten Organisation dieselben Erweiterungen installieren.

Erweiterungen, die nicht über den Chrome Web Store installiert werden, werden als externe Erweiterungen bezeichnet. Für Entwickler, die eine Erweiterung im Rahmen des Installationsprozesses für andere Software bereitstellen möchten, oder für Netzwerkadministratoren, die eine Erweiterung im gesamten Unternehmen bereitstellen möchten, unterstützt Google Chrome die folgenden Methoden zur Installation von Erweiterungen:

  • JSON-Datei mit Einstellungen verwenden (nur für Mac OS X und Linux)
  • Windows-Registrierung verwenden (nur für Windows)

In beiden Fällen wird die Installation einer Erweiterung unterstützt, die in einem update_URL gehostet wird. Unter Windows und Mac muss update_URL auf den Chrome Web Store verweisen, in dem die Erweiterung gehostet werden muss.

Die Datei mit den Einstellungen kann unter Linux auf Ihren eigenen Server verweisen, auf dem Sie die Erweiterung hosten. Die JSON-Datei mit den Einstellungen unterstützt auch die Installation einer Erweiterung aus einer .crx-Erweiterungsdatei auf dem Linux-Computer des Nutzers.

Hinweis

publish Sie die Erweiterung zuerst im Chrome Web Store oder verpacken Sie eine .crx-Datei und prüfen Sie, ob sie erfolgreich installiert wird.

Bei der Installation über eine Update-URL muss die Erweiterung ordnungsgemäß gehostet werden.

Beachten Sie Folgendes, bevor Sie die Einstellungsdatei oder die Registrierung bearbeiten:

  • Der vorgesehene Speicherort der .crx-Datei der Erweiterung oder die Update-URL, über die sie bereitgestellt wird
  • Die Version der Erweiterung (aus der Manifestdatei oder der Seite chrome://extensions)
  • Die ID der Erweiterung (von der Seite chrome://extensions, nachdem Sie die gepackte Erweiterung geladen haben)

In den folgenden Beispielen wird davon ausgegangen, dass die Version 1.0 und die ID aaaaaaaaaabbbbbbbbbbcccccccccc lautet.

Datei mit Einstellungen verwenden

  1. Wenn Sie die Installation von einer Datei unter Linux aus vornehmen, stellen Sie dem Computer, auf dem Sie die Erweiterung installieren möchten, die Erweiterungsdatei .crx zur Verfügung. Kopieren Sie die Datei in ein lokales Verzeichnis oder in einen Netzwerkfreigabebereich, z. B. \\server\share\extension.crx oder /home/share/extension.crx.
  2. Erstellen Sie eine Datei mit dem folgenden Namen in einem der unten aufgeführten Ordner: aaaaaaaaaabbbbbbbbbbcccccccccc.json. Der Dateiname (ohne Erweiterung) entspricht dabei der ID Ihrer Erweiterung. Der Speicherort hängt vom Betriebssystem ab.

    Mac OS X:

    Für einen bestimmten Nutzer: ~USERNAME/Library/Application Support/Google/Chrome/External Extensions/ Für alle Nutzer: /Library/Application Support/Google/Chrome/External Extensions/

    Die externe Erweiterungsdatei für alle Nutzer ist schreibgeschützt, wenn jedes Verzeichnis im Pfad dem Nutzer root gehört, die Gruppe admin oder wheel enthält und nicht von allen Nutzern beschreibbar ist. Der Pfad darf außerdem keine symbolischen Links enthalten. Diese Einschränkungen verhindern, dass ein nicht privilegierter Nutzer Erweiterungen für alle Nutzer installiert. Weitere Informationen finden Sie unter Fehlerbehebung.

    Linux:

    /opt/google/chrome/extensions/

    /usr/share/google-chrome/extensions/

    Hinweis: Verwenden Sie bei Bedarf chmod, damit die aaaaaaaaaabbbbbbbbbbcccccccccc.json-Dateien allgemein lesbar sind.

  3. Nur Linux: Wenn Sie die Installation aus einer Datei ausführen, geben Sie den Speicherort und die Version der Erweiterung mit den Feldern „external_crx“ und „external_version“ in der oben erstellten Datei an.

    • Beispiel:
    • json { "external_crx": "/home/share/extension.crx", "external_version": "1.0" }
    • Hinweis: \` character in the location. For example,\server\share\extension.crxwould be"\\server\share\extension.crx"` muss mit einem Escapezeichen versehen werden.
    • Wenn Sie die Installation über eine Update-URL durchführen, geben Sie die Update-URL der Erweiterung mit dem Feldnamen „external_update_url“ an.
    • Beispiel für eine Installation über eine lokale CRX-Datei (nur Linux):
    • json { "external_update_url": "http://myhost.com/mytestextension/updates.xml" }
    • Beispiel für eine Installation über den Chrome Web Store (Mac und Linux):
    • json { "external_update_url": "https://clients2.google.com/service/update2/crx" }
    • Wenn Sie die Erweiterung nur für bestimmte Browsersprachen installieren möchten, können Sie die unterstützten Sprachen im Feldnamen „supported_locale“ auflisten. In der Sprache kann ein übergeordnetes Gebietsschema wie "en" angegeben werden. In diesem Fall wird die Erweiterung für alle englischen Sprachen wie "en-US", "en-GB" usw. installiert. Wenn ein anderes Browser-Gebietsschema ausgewählt wird, das von der Erweiterung nicht unterstützt wird, werden die externen Erweiterungen deinstalliert. Wenn die Liste „supported_locales“ fehlt, wird die Erweiterung für jedes Gebietsschema installiert.
    • Beispiel:
    • json { "external_update_url": "https://clients2.google.com/service/update2/crx", "supported_locales": [ "en", "fr", "de" ] }
  4. Speichern Sie die JSON-Datei.

  5. Starten Sie Google Chrome und rufen Sie chrome://extensions auf. Die Erweiterung sollte in der Liste aufgeführt sein.

Fehlerbehebung bei Problemen mit Berechtigungen unter macOS

Unter Mac OS werden die externen Erweiterungsdateien für alle Nutzer nur gelesen, wenn die Dateisystemberechtigungen verhindern, dass nicht privilegierte Nutzer sie ändern. Wenn beim Start von Chrome keine externen Erweiterungen installiert sind, liegt möglicherweise ein Berechtigungsproblem mit den Einstellungsdateien für externe Erweiterungen vor. So überprüfen Sie, ob dies das Problem ist:

  1. Starten Sie das Programm „Console“. Sie finden sie unter /Programme/Dienstprogramme/Konsole.
  2. Wenn in der Konsole auf dem Symbol ganz links „Show Log List“ (Protokollliste anzeigen) steht, klicken Sie darauf. Eine zweite Spalte wird links angezeigt.
  3. Klicken Sie im linken Bereich auf „Console-Nachrichten“.
  4. Suchen Sie nach dem String Externe Erweiterungen können nicht gelesen werden. Wenn die externen Erweiterungsdateien nicht gelesen werden können, wird eine Fehlermeldung angezeigt. Suchen Sie direkt darüber nach einer anderen Fehlermeldung, die das Problem erklären sollte. Wenn beispielsweise der folgende Fehler angezeigt wird: „Pfad /Library/Application Support/Google/Chrome gehört zur falschen Gruppe“, müssen Sie chgrp oder das Dialogfeld „Informationen abrufen“ des Finders verwenden, um den Gruppeninhaber des Verzeichnisses in die Gruppe „Administrator“ zu ändern.
  5. Starten Sie Chrome neu, nachdem Sie das Problem behoben haben. Testen Sie, ob die externe Erweiterung jetzt installiert ist. Es ist möglich, dass Chrome aufgrund eines Berechtigungsfehlers keinen zweiten Fehler erkennt. Wenn die externe Erweiterung nicht installiert wurde, wiederholen Sie diese Schritte, bis in der Console-Anwendung kein Fehler mehr angezeigt wird.

Windows-Registrierung verwenden

  1. Suchen oder erstellen Sie den folgenden Schlüssel in der Registry:
    • 32-Bit-Windows: HKEY_LOCAL_MACHINE\Software\Google\Chrome\Extensions
    • 64-Bit-Windows: HKEY_LOCAL_MACHINE\Software\Wow6432Node\Google\Chrome\Extensions
  2. Erstellen Sie unter dem Schlüssel Erweiterungen einen neuen Schlüssel (Ordner) mit dem Namen der ID Ihrer Erweiterung (z. B. aaaaaaaaaabbbbbbbbbbcccccccccc).
  3. Erstellen Sie in Ihrem Erweiterungsschlüssel die Eigenschaft "update_url" und legen Sie sie auf den Wert "https://clients2.google.com/service/update2/crx" fest. Dieser verweist auf die CRX-Datei Ihrer Erweiterung im Chrome Web Store:

    {
      "update_url": "https://clients2.google.com/service/update2/crx"
    }
    
  4. Starten Sie den Browser und rufen Sie chrome://extensions auf. Dort sollte die Erweiterung zu sehen sein.

Aktualisieren und Deinstallieren

Google Chrome scannt bei jedem Start des Browsers die Metadateneinträge in den Einstellungen und der Registry und nimmt alle erforderlichen Änderungen an den installierten externen Erweiterungen vor.

Wenn Sie die Erweiterung auf eine neue Version aktualisieren möchten, aktualisieren Sie die Datei und dann die Version in den Einstellungen oder in der Registry.

Wenn Sie die Erweiterung deinstallieren möchten, z. B. wenn Ihre Software deinstalliert wurde, entfernen Sie die Einstellungsdatei (aaaaaaaaaabbbbbbbbbbcccccccccc.json) oder die Metadaten aus der Registry.

Häufig gestellte Fragen

In diesem Abschnitt finden Sie Antworten auf häufig gestellte Fragen zu externen Erweiterungen.

Wird die Methode zum Zulassen einer Vorinstallation auch ab M33 in Google Chrome unterstützt?

Ja, aber nur als Installation von einem Chrome Web Store-update_URL und nicht von einem lokalen Dateipfad.

Kann ich eine URL als Pfad zur externen Erweiterung angeben?

Ja, verwenden Sie die JSON-Datei mit den Einstellungen für Mac OS X und Linux bzw. die registry für Windows. Die Erweiterung muss wie unter Hosting erläutert gehostet werden. Verwenden Sie in der Einstellungsdatei das Attribut "external_update_url", um auf ein Update-Manifest zu verweisen, das die URL für Ihre Erweiterung enthält. Verwenden Sie in der Windows-Registrierung das Attribut „update_url“.

Welche Fehler treten häufig bei der Installation mit der Einstellungsdatei auf?

  • Nicht dieselbe ID/Version wie in .crx angegeben
  • Die JSON-Datei (aaaaaaaaaabbbbbbbbbbcccccccccc.json) befindet sich am falschen Speicherort oder die angegebene ID stimmt nicht mit der Erweiterungs-ID überein.
  • Syntaxfehler in JSON-Datei (vergessen, Einträge durch Kommas zu trennen, oder nachgestelltes Komma bleibt irgendwo stehen)
  • Der JSON-Dateieintrag verweist auf den falschen Pfad zu .crx (oder den angegebenen Pfad, aber keinen Dateinamen).
  • Umgekehrte Schrägstriche im UNC-Pfad nicht mit Escapezeichen versehen (z. B. ist "\\server\share\file" falsch; sollte "\\\\server\\share\\extension" lauten)
  • Berechtigungsprobleme bei einer Netzwerkfreigabe

Welche Fehler treten häufig bei der Installation mit der Registrierung auf?

  • ID/Version stimmt nicht mit der im Chrome Web Store angegebenen ID/Version überein
  • Schlüssel an falscher Stelle in der Registry erstellt
  • Der Registry-Einstiegspunkt verweist auf den falschen Pfad zur Datei .crx im Chrome Web Store.
  • Berechtigungsprobleme bei einer Netzwerkfreigabe

Wie aktualisiere ich meine nativen Binärprogramme und Erweiterungen Schritt für Schritt?

Wenn bisher Erweiterungen außerhalb des Stores unterstützt wurden, konnten die nativen Binärprogramme und die Erweiterung im Sperrschritt aktualisiert werden. Im Chrome Web Store gehostete Erweiterungen werden jedoch über den Chrome-Update-Mechanismus aktualisiert, den Entwickler nicht kontrollieren können. Entwickler von Erweiterungen sollten bei der Aktualisierung von Erweiterungen vorsichtig sein, die eine Abhängigkeit von der nativen Binärdatei haben (z. B. alte Erweiterungen, die NPAPI verwenden).

Was passiert, wenn der Nutzer die Erweiterung deinstalliert?

Wenn der Nutzer die Erweiterung über die Benutzeroberfläche deinstalliert, wird sie nicht mehr bei jedem Start installiert oder aktualisiert. Mit anderen Worten: Die externe Erweiterung ist auf der Sperrliste.

Wie werde ich von der Sperrliste entfernt?

Wenn der Nutzer Ihre Erweiterung deinstalliert, sollten Sie diese Entscheidung respektieren. Wenn Sie (der Entwickler) Ihre Erweiterung jedoch versehentlich über die Benutzeroberfläche deinstalliert haben, können Sie das Sperrlisten-Tag entfernen, indem Sie die Erweiterung normal über die Benutzeroberfläche installieren und dann deinstallieren.