Wenn Sie die Google Awareness API verwenden möchten, müssen Sie Ihrer App einen Google-API-Schlüssel hinzufügen. Sie benötigen einen Android-API-Schlüssel.
Alle Android-Apps werden mit einem digitalen Zertifikat signiert, für das Sie den privaten Schlüssel besitzen. Weitere Informationen zu digitalen Zertifikaten finden Sie im Android-Leitfaden zum Signieren von Apps.
Android-API-Schlüssel sind mit bestimmten Zertifikat-Paket-Paaren verknüpft. Sie benötigen nur einen Schlüssel für jedes Zertifikat, unabhängig davon, wie viele Nutzer die App haben.
Sie müssen mehrere Schritte ausführen, um einen Schlüssel für Ihre App zu erhalten. Diese werden in diesem Leitfaden ausführlich beschrieben und sind wie folgt zusammengefasst:
- Informationen zum Zertifikat Ihrer App abrufen
- Registrieren Sie ein Projekt in der Google Developers Console und fügen Sie die User Context API als Dienst für das Projekt hinzu.
- Fordern Sie einen Schlüssel an.
- Fügen Sie den Schlüssel in Ihre App ein. Fügen Sie dazu ein Element in Ihr App-Manifest ein.
Zertifikatsinformationen Ihrer App finden
Der API-Schlüssel basiert auf einer Kurzform des digitalen Zertifikats Ihrer App, auch bekannt als SHA-1-Fingerabdruck. Wenn Sie den SHA-1-Fingerabdruck für Ihr Zertifikat aufrufen möchten, müssen Sie zuerst sicherstellen, dass Sie das richtige Zertifikat verwenden. Möglicherweise haben Sie die folgenden beiden Zertifikate zur Auswahl:
- 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öffentlichen Sie keine Apps, die mit einem Debug-Zertifikat signiert sind. Das Debugzertifikat wird im Abschnitt Debug-Build signieren 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.
Weitere Informationen zu keytool
finden Sie in der Oracle-Dokumentation.
Fingerabdruck des Debug-Zertifikats aufrufen
Verwenden Sie das Programm keytool
mit dem Parameter -v
, um den SHA-1-Fingerabdruck eines Zertifikats aufzurufen. Führen Sie dazu folgende Schritte aus:
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):- OS X und Linux:
~/.android/
- Windows Vista und Windows 7:
C:\Users\your_user_name\.android\
- OS X und Linux:
SHA-1-Fingerabdruck auflisten:
Öffnen Sie unter Linux oder OS X ein Terminalfenster und geben Sie Folgendes ein:
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
Führen Sie unter Windows Vista und Windows 7 Folgendes aus:
keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android
Die Ausgabe sollte in etwa 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
Verwenden Sie das Programm keytool
mit dem Parameter -v
, um den SHA-1-Fingerabdruck eines Zertifikats aufzurufen. Führen Sie dazu folgende Schritte aus:
- Suche nach der Schlüsselspeicherdatei deines Freigabezertifikats. Es gibt keinen Standardspeicherort 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. Geben Sie Folgendes ein, um die Aliasnamen für alle Schlüssel in einem Schlüsselspeicher aufzulisten:
keytool -list -keystore your_keystore_name
- Ersetzen Sie
your_keystore_name
durch den vollständig qualifizierten Pfad und Namen des Schlüsselspeichers. Fügen Sie die Erweiterung.keystore
ein. Geben Sie das Passwort des Schlüsselspeichers ein, wenn Sie dazu aufgefordert werden. Mithilfe vonkeytool
werden 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
- Ersetzen Sie
your_keystore_name
durch den vollständig qualifizierten Pfad und Namen des Schlüsselspeichers. Fügen Sie die Erweiterung.keystore
ein. - Ersetzen Sie
your_alias_name
durch den Alias, den Sie dem Zertifikat beim Erstellen zugewiesen haben.
Die Ausgabe sollte in etwa 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.
API-Schlüssel aus der Google Developers Console abrufen
Wenn Sie die Google Awareness API verwenden möchten, klicken Sie auf die Schaltfläche Schlüssel anfordern. Sie werden zur Google Developers Console weitergeleitet, die Sie durch den Prozess führt und die Awareness API automatisch aktiviert.
Du hast auch die Möglichkeit, die folgenden Schritte auszuführen, um einen API-Schlüssel zu erhalten:
- Rufen Sie die Google Developers Console auf.
- Wählen Sie ein Projekt aus oder erstellen Sie ein neues.
- Klicken Sie auf Weiter, um die Awareness API zu aktivieren.
Erstellen Sie auf der Seite „Anmeldedaten“ einen Android-Schlüssel und legen Sie die API-Anmeldedaten fest.
Im Dialogfeld „Schlüssel erstellen“ müssen Sie die Nutzung auf Android-Apps beschränken. Geben Sie dazu den SHA‑1-Fingerabdruck und den Paketnamen Ihrer App ein, wie im folgenden Beispiel:
BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75 com.example.android.awareness-example
Klicken Sie auf Erstellen. Der neue Android-API-Schlüssel wird in der Liste der API-Schlüssel für Ihr Projekt angezeigt. Ein API-Schlüssel ist eine Zeichenfolge, die in etwa so aussieht:
AIzaSyBdVl-cTICSwYKrZ95LoVuw7dbMuDt1KG0
Nachdem Sie einen API-Schlüssel haben, können Sie ihn dem Manifest Ihrer App hinzufügen. Eine Anleitung dazu finden Sie im Leitfaden für den Einstieg.
Zusätzliche APIs aktivieren
Mit der Awareness API können Sie auf verschiedene Arten von Kontextdaten zugreifen, z. B. auf Beacons. Wenn Sie diese Typen verwenden möchten, müssen Sie die entsprechenden APIs in der Google Developers Console aktivieren.
Dienst | Awareness API-Methoden | Zu aktivierende API |
---|---|---|
Beacons | SnapshotApi.getBeaconState() ,
FenceApi.BeaconFence |
Nearby Messages API |