OAuth 2.0-Client-ID abrufen

Übersicht

Zur Verwendung von Google Fit für Android benötigen Sie eine OAuth-2.0-Client-ID für Android-Apps

Alle Android-Apps sind mit einem digitalen Zertifikat signiert, privaten Schlüssel enthält. Weitere Informationen zu digitalen Zertifikaten finden Sie im Android-Leitfaden zum Signieren von Apps.

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

Zum Erstellen einer ID für Ihre App sind mehrere Schritte erforderlich. Diese Schritte werden unten beschrieben.

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

Zertifikatinformationen Ihrer App finden

Der API-Schlüssel basiert auf einer Kurzform des digitalen Zertifikats Ihrer App, auch bekannt als SHA-1-Fingerabdruck. So zeigen Sie den SHA-1-Wert an: Fingerabdruck für Ihr Zertifikat verwenden, vergewissern Sie sich zunächst, dass Sie den richtigen Zertifikat. 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.

Debugzertifikat

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
Freigabezertifikat

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 im Google API Console, aktivieren Sie die Fitness API und fordern Sie eine OAuth 2.0-Client-ID an.

Wenn Sie durch den Vorgang geführt werden und die Fitness API automatisch, klicken

Client-ID abrufen

Alternativ können Sie die Fitness API in der Google API Console und rufen Sie eine OAuth 2.0-Client-ID ab.

  1. Rufen Sie die Google API Console auf.
  2. Wählen Sie ein Projekt aus oder erstellen Sie ein neues. Verwenden Sie dasselbe Projekt für das und REST-Versionen Ihrer App.
  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 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. Ihre neue Android-OAuth 2.0-Client-ID und Ihr neuer Android-Clientschlüssel werden in die Liste der IDs für Ihr Projekt. Eine OAuth 2.0-Client-ID ist ein String aus in etwa so aussehen:

    780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com