Übersicht
Wenn du Google Fit für Android verwenden möchtest, benötigst du eine OAuth 2.0-Client-ID für Android-Anwendungen.
Alle Android-Apps sind mit einem digitalen Zertifikat signiert, für das du den privaten Schlüssel besitzt. Weitere Informationen zu digitalen Zertifikaten findest du in der Android-Anleitung zum Signieren von Anwendungen.
Android-OAuth-Client-IDs sind mit bestimmten Zertifikat-/Paket-Paaren verknüpft. Du benötigst nur eine ID pro Zertifikat, unabhängig davon, wie viele Nutzer die App hat.
Das Abrufen einer ID für deine App erfordert mehrere Schritte. Diese Schritte werden unten beschrieben.
- Zertifikatsinformationen deiner App suchen
- Projekt in der Google API Console erstellen oder ändern
- OAuth 2.0-Client-ID anfordern
Zertifikatsinformationen deiner App suchen
Der API-Schlüssel basiert auf einer Kurzform des digitalen Zertifikats deiner App, auch bekannt als SHA-1-Fingerabdruck. Wenn du den SHA-1 Fingerabdruck für dein Zertifikat aufrufen möchtest, musst du zuerst sicherstellen, dass du das richtige Zertifikat verwendest. Möglicherweise hast du zwei Zertifikate:
- Debugzertifikat: 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
keytoolgenerieren. 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.
Fingerabdruck des Debug-Zertifikats aufrufen
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\
- macOS und Linux:
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
Fingerabdruck des Freigabezertifikats aufrufen
-
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
.apkvom 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_namedurch 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 vonkeytoolwerden dann alle Aliasnamen im Schlüsselspeicher angezeigt. -
Gib Folgendes in einem Terminal oder bei einer Eingabeaufforderung ein:
keytool -list -v -keystore your_keystore_name -alias your_alias_name
Ersetze
your_keystore_namedurch den vollständig qualifizierten Pfad und Namen des Schlüsselspeichers, einschließlich der Erweiterung.keystore. Ersetzeyour_alias_namedurch 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
Folge dieser Anleitung, um ein Projekt für deine 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
Alternativ kannst du die Fitness API in der Google API Console aktivieren und eine OAuth 2.0-Client-ID abrufen.
- Rufe die Google API Console auf.
- Wähle ein Projekt aus oder erstelle ein neues. Verwende dasselbe Projekt für die Android und REST-Versionen deiner App.
- Klicke auf Weiter , um die Fitness API zu aktivieren.
- Klicke auf Zu den Anmeldedaten.
- Klicke auf Neue Anmeldedaten und wähle dann OAuth-Client-ID aus.
- Wähle unter Anwendungstyp die Option Android aus.
Gib im angezeigten Dialogfeld den SHA-1-Fingerabdruck und den Paket namen deiner App ein. Beispiel:
BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75com.example.android.fit-exampleKlicke auf Erstellen. Die neue Android-OAuth 2.0-Client-ID und der neue Clientschlüssel werden in der Liste der IDs für dein Projekt angezeigt. Eine OAuth 2.0-Client-ID ist eine Zeichenfolge aus Zeichen, etwa so:
780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com