Mit der Snapshot API können Sie Informationen zur aktuellen Umgebung des Nutzers abrufen. Mit der Snapshot API, können Sie auf eine Vielzahl von Kontextsignalen zugreifen:
- Erkannte Nutzeraktivität, z. B. wenn der Nutzer geht oder fährt.
- Beacons in der Nähe, die Sie registriert haben.
- Status der Kopfhörer, z. B. ob sie eingesteckt sind.
- Standort, einschließlich Längen- und Breitengrad.
Das System speichert diese Werte im Cache, damit sie schnell zurückgegeben werden können. Wenn keine Daten vorhanden sind, werden Erfassung und Inferenz durchgeführt, um aktuelle Statuswerte zurückzugeben. Die Awareness API gibt den vorhandenen Datentyp für Kontexttypen zurück, die eine öffentliche API haben.
Jedes Kontextsignal hat eine entsprechende Snapshot API-Methode. Um beispielsweise die aktuelle erkannte Aktivität abzurufen, rufen Sie getDetectedActivity() auf, verwenden Sie einen SuccessListener, um eine DetectedActivityResponse zu erhalten, und rufen Sie dann getActivityRecognitionResult() auf, um ein ActivityRecognitionResult zurückzugeben, aus dem Sie die tatsächlichen Anfragedaten abrufen können.
Im folgenden Beispiel wird gezeigt, wie Sie die letzte erkannte Aktivität abrufen:
Awareness.getSnapshotClient(this).getDetectedActivity()
.addOnSuccessListener(new OnSuccessListener<DetectedActivityResponse>() {
@Override
public void onSuccess(DetectedActivityResponse dar) {
ActivityRecognitionResult arr = dar.getActivityRecognitionResult();
}
})
Weitere Informationen dazu, was Sie mit den Anfragedaten tun können, finden Sie unter Snapshot-Daten abrufen.