In diesem Dokument wird beschrieben, wie Sie mit der Awareness API auf Android-Geräten entwickeln. Die Awareness API ist Teil der Google Play-Dienste.
Für die Verwendung der Awareness API benötigen Sie ein Google-Konto. Wenn Sie bereits ein solches Konto haben, sind Sie schon startklar. Für Testzwecke könnte ein separates Google-Konto sinnvoll sein.
Hinweis
API-Schlüssel abrufen
Wenn Sie die Awareness API noch nicht aktiviert und keinen Google API-Schlüssel erhalten haben, folgen Sie der Anleitung unter Registrierung und API-Schlüssel.
Eigene App konfigurieren
Fügen Sie in der Datei
build.gradle
auf Projektebene das Maven-Repository von Google in die Abschnittebuildscript
undallprojects
ein:buildscript { repositories { google() } } allprojects { repositories { google() } }
Fügen Sie der Gradle-Datei Ihres Moduls auf App-Ebene die Abhängigkeiten für die Awareness API hinzu. Diese Datei heißt in der Regel
app/build.gradle
:dependencies { implementation 'com.google.android.gms:play-services-awareness:19.1.0' }
Fügen Sie der Datei
AndroidManifest.xml
Ihrer App Ihren Awareness API-Schlüssel hinzu. Fügen Sie dazu ein<meta-data>
-Tag mitandroid:name="com.google.android.awareness.API_KEY"
hinzu. Geben Sie nebenandroid:value
Ihren eigenen Awareness API-Schlüssel ein, umgeben von Anführungszeichen.<manifest> <application> <meta-data android:name="com.google.android.awareness.API_KEY" android:value="API_KEY"/> </application> </manifest>
Fügen Sie der Datei
AndroidManifest.xml
Ihrer App die erforderlichen Berechtigungen hinzu. Die erforderlichen Berechtigungen variieren je nach den API-Methoden und Zauntypen, die in Ihrer App verwendet werden.
Beispielanruf
Im folgenden Beispielaufruf von getDetectedActivity()
wird gezeigt, wie das verbindungslose Google Play-Dienstmodell mit der Awareness API verwendet wird:
// Each type of contextual information in the snapshot API has a corresponding "get" method.
// For instance, this is how to get the user's current Activity.
Awareness.getSnapshotClient(this).getDetectedActivity()
.addOnSuccessListener(new OnSuccessListener<DetectedActivityResponse>() {
@Override
public void onSuccess(DetectedActivityResponse dar) {
ActivityRecognitionResult arr = dar.getActivityRecognitionResult();
// getMostProbableActivity() is good enough for basic Activity detection.
// To work within a threshold of confidence,
// use ActivityRecognitionResult.getProbableActivities() to get a list of
// potential current activities, and check the confidence of each one.
DetectedActivity probableActivity = arr.getMostProbableActivity();
int confidence = probableActivity.getConfidence();
String activityStr = probableActivity.toString();
mLogFragment.getLogView().println("Activity: " + activityStr
+ ", Confidence: " + confidence + "/100");
}
})
Nächste Schritte
Weitere Informationen zu den verschiedenen APIs der Awareness API: