OAuth 2.0-Client-ID abrufen

Übersicht

Wenn Sie Google Fit für Android verwenden möchten, benötigen Sie eine OAuth 2.0-Client-ID für Android-Apps.

Alle Android-Apps sind mit einem digitalen Zertifikat signiert, für das Sie den privaten Schlüssel aufbewahren. Weitere Informationen zu digitalen Zertifikaten finden Sie im Android-Leitfaden zum Signieren von Apps.

Android-OAuth-Client-IDs sind mit bestimmten Zertifikat-/Paketpaaren verknüpft. Sie benötigen nur eine ID pro Zertifikat, unabhängig davon, wie viele Nutzer die App haben.

Das Abrufen der ID für Ihre App erfordert mehrere Schritte. Diese Schritte sind nachfolgend beschrieben.

  1. Suchen Sie die Informationen zum Zertifikat Ihrer App.
  2. Erstellen oder ändern Sie ein Projekt in der Google API Console.
  3. Fordern Sie eine OAuth 2.0-Client-ID an.

Informationen des Zertifikats Ihrer App finden

Der API-Schlüssel basiert auf einer kurzen Form des digitalen Zertifikats Ihrer App, auch SHA-1-Fingerabdruck genannt. Achten Sie darauf, dass Sie das richtige Zertifikat verwenden, um den SHA-1-Fingerabdruck für Ihr Zertifikat anzuzeigen. Möglicherweise haben Sie zwei Zertifikate:

  • Debug-Zertifikat: Die Android SDK-Tools generieren dieses Zertifikat automatisch, wenn du ein Debug-Build ausführst. Verwende dieses Zertifikat nur bei Apps, die du testest. Veröffentliche keine Apps, die mit einem Debugzertifikat signiert sind. Das Debugzertifikat wird im Abschnitt zum Signieren im Debugmodus in der Dokumentation für Android-Entwickler näher beschrieben.
  • Freigabezertifikat: Die Android SDK-Tools generieren dieses Zertifikat automatisch, wenn du ein Releasebuild ausführst. Du kannst dieses Zertifikat auch mithilfe des Programms keytool generieren. Verwende dieses Zertifikat, wenn du deine App veröffentlichst.

Befolge die Schritte unten, um den SHA-1-Fingerabdruck eines Zertifikats über das Programm keytool mit dem Parameter -v aufzurufen. Weitere Informationen zu Keytool findest du in der Oracle-Dokumentation.

Debug-Zertifikat

Fingerabdruck des Debug-Zertifikats aufrufen

  1. Suche nach deiner Debug-Schlüsselspeicherdatei. Der Dateiname ist debug.keystore. Die Datei wurde angelegt, als du dein Projekt zum ersten Mal erstellt hast. Standardmäßig befindet sich die Datei in demselben Verzeichnis wie deine AVD-Dateien (Android Virtual Device):

    • macOS und Linux: ~/.android/
    • Windows Vista und Windows 7: C:\Users\your_user_name\.android\
  2. SHA-1-Fingerabdruck auflisten:

    • Öffne unter Linux oder macOS ein Terminalfenster und gib Folgendes ein:

      keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
    • Führe unter Windows Vista und Windows 7 folgenden Befehl aus:

      keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android

Die Ausgabe sollte ungefähr so aussehen:

Alias name: androiddebugkey
Creation date: Jan 01, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 4aa9b300
Valid from: Mon Jan 01 08:04:04 UTC 2013 until: Mon Jan 01 18:04:04 PST 2033
Certificate fingerprints:
     MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6A:AC:F9
     SHA1: BB:0D:AC:74:D3:21:E1:43:07:71:9B:62:90:AF:A1:66:6E:44:5D:75
     Signature algorithm name: SHA1withRSA
     Version: 3
Veröffentlichungszertifikat

Fingerabdruck des Freigabezertifikats aufrufen

  1. Suche nach der Schlüsselspeicherdatei deines Freigabezertifikats. Es gibt keinen Standardspeicherplatz oder -namen für den Schlüsselspeicher der Freigabe. Falls du beim Erstellen der App keine Version angibst, wird .apk vom Build nicht signiert. Du musst sie dann vor dem Veröffentlichen signieren. Für das Freigabezertifikat benötigst du auch den Zertifikatsalias und die Kennwörter für den Schlüsselspeicher und das Zertifikat. Du kannst die Aliasnamen für alle Schlüssel in einem Schlüsselspeicher auflisten, indem du Folgendes eingibst:

    keytool -list -keystore your_keystore_name

    Ersetze your_keystore_name durch den vollständig qualifizierten Pfad und Namen des Schlüsselspeichers, einschließlich der Erweiterung .keystore. Du wirst aufgefordert, das Passwort des Schlüsselspeichers einzugeben. Mithilfe von keytool werden dann alle Aliasnamen im Schlüsselspeicher angezeigt.

  2. Gib Folgendes in einem Terminal oder bei einer Eingabeaufforderung ein:

    keytool -list -v -keystore your_keystore_name -alias your_alias_name

    Ersetze your_keystore_name durch den vollständig qualifizierten Pfad und Namen des Schlüsselspeichers, einschließlich der Erweiterung .keystore. Ersetze your_alias_name durch den Alias, den du dem Zertifikat beim Erstellen zugewiesen hast.

Die Ausgabe sollte ungefähr so aussehen:

Alias name: <alias_name>
Creation date: Feb 02, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 4cc9b300
Valid from: Mon Feb 02 08:01:04 UTC 2013 until: Mon Feb 02 18:05:04 PST 2033
Certificate fingerprints:
    MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6B:AC:F9
    SHA1: BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:90:AF:A1:66:6E:44:5D:75
    Signature algorithm name: SHA1withRSA
    Version: 3

Die Zeile, die mit SHA1 beginnt, enthält den SHA-1-Fingerabdruck des Zertifikats. Der Fingerabdruck ist eine Abfolge aus 20 zweistelligen Hexadezimalzahlen, die durch Doppelpunkte getrennt sind.

OAuth 2.0-Client-ID in der Google API Console anfordern

Führen Sie die folgenden Schritte aus, um ein Projekt für Ihre App in der Google API Console zu erstellen oder zu ändern, die Fitness API zu aktivieren und eine OAuth 2.0-Client-ID anzufordern.

Wenn du durch den Prozess geführt werden und die Fitness API automatisch aktivieren möchtest, klicke auf

Client-ID abrufen

Alternativ können Sie die folgenden Schritte ausführen, um die Fitness API in der Google API Console zu aktivieren und eine OAuth 2.0-Client-ID abzurufen.

  1. Rufen Sie die Google API Console auf.
  2. Wählen Sie ein Projekt aus oder erstellen Sie ein neues. Verwenden Sie für die Android- und die REST-Version Ihrer App dasselbe Projekt.
  3. Klicken Sie auf Weiter, um die Fitness API zu aktivieren.
  4. Klicken Sie auf Zu den Anmeldedaten.
  5. Klicken Sie auf Neue Anmeldedaten und wählen Sie OAuth-Client-ID aus.
  6. Wählen Sie unter Anwendungstyp die Option Android aus.
  7. Geben Sie im daraufhin angezeigten Dialogfeld den SHA-1-Fingerabdruck und den Paketnamen Ihrer App ein. Beispiel:

    BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75

    com.example.android.fit-example

  8. Klicken Sie auf Erstellen. Die neue Android OAuth 2.0-Client-ID und das neue Secret werden in der Liste der IDs für Ihr Projekt angezeigt. Eine OAuth 2.0-Client-ID ist ein String aus Zeichen, der in etwa so aussieht:

    780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com