OAuth 2.0-Client-ID abrufen

Überblick

Um Google Fit für Android verwenden zu können, benötigen Sie eine OAuth 2.0-Client-ID für Android-Anwendungen.

Alle Android-Apps sind mit einem digitalen Zertifikat signiert, für das Sie den privaten Schlüssel haben. Weitere Informationen zu digitalen Zertifikaten findest du in der Android-Anleitung zum Signieren von Apps.

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

Um eine ID für Ihre App zu erhalten, sind mehrere Schritte erforderlich. Diese Schritte sind unten beschrieben.

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

Informationen zum Zertifikat Ihrer App finden

Der API-Schlüssel basiert auf einer Kurzform des digitalen Zertifikats Ihrer App, die auch als SHA-1-Fingerabdruck bezeichnet wird. Damit der SHA-1-Fingerabdruck für Ihr Zertifikat angezeigt werden kann, müssen Sie zuerst prüfen, ob Sie das richtige Zertifikat verwenden. 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
Release-Zertifikat

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 Anwendung in der Google API Console zu erstellen oder zu ändern, die Fitness API zu aktivieren und eine OAuth 2.0-Client-ID anzufordern.

Wenn Sie durch den Prozess geführt werden und die Fitness API automatisch aktivieren möchten, klicken Sie auf

Client-ID abrufen

Alternativ kannst du die Fitness API in der Google API Console aktivieren und eine OAuth 2.0-Client-ID anfordern.

  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 dann 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. Deine neue Android OAuth 2.0-Client-ID und dein Secret werden in der Liste der IDs für dein Projekt angezeigt. Eine OAuth 2.0-Client-ID ist eine Zeichenfolge, die in etwa so aussieht:

    780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com