Mit der Snapshot API kannst du Informationen zur aktuellen Umgebung des Nutzers abrufen. Mit der Snapshot API können Sie auf eine Vielzahl von Kontextsignalen zugreifen:
- Erkannte Nutzeraktivitäten, z. B. wenn der Nutzer geht oder fährt.
- Beacons in der Nähe, die Sie registriert haben.
- Kopfhörerstatus, d. h. ob Kopfhörer angeschlossen sind oder nicht.
- Standort, einschließlich Breiten- und Längengrad.
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.
Jedem Kontextsignal entspricht eine Snapshot API-Methode. Wenn Sie beispielsweise die aktuell erkannte Aktivität abrufen möchten, rufen Sie getDetectedActivity() auf, verwenden Sie ein SuccessListener, um ein 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 zuletzt 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.