Puoi utilizzare l'API Snapshot per ottenere informazioni sull'ambiente attuale dell'utente. Con l'API Snapshot, puoi accedere a una varietà di segnali di contesto:
- Attività utente rilevata, ad esempio quando cammina o guida.
- Beacon nelle vicinanze che hai registrato.
- Stato delle cuffie, collegate o meno.
- Posizione, che include latitudine e longitudine.
Il sistema memorizza nella cache questi valori in modo che possano essere restituiti rapidamente. Se non sono presenti dati, vengono eseguite operazioni di rilevamento e inferenza per restituire valori di stato aggiornati. L'API Awareness restituisce il tipo di dati esistente per i tipi di contesto che hanno un' API pubblica.
Ogni segnale di contesto ha un metodo API Snapshot corrispondente. Ad esempio, per
ottenere l'attività rilevata corrente, chiama
getDetectedActivity(),
utilizza un SuccessListener per ottenere un DetectedActivityResponse,
quindi chiama getActivityRecognitionResult()
per restituire un ActivityRecognitionResult
da cui puoi ottenere i dati della richiesta effettivi.
Il seguente esempio mostra come ottenere l'ultima attività rilevata:
Awareness.getSnapshotClient(this).getDetectedActivity()
.addOnSuccessListener(new OnSuccessListener<DetectedActivityResponse>() {
@Override
public void onSuccess(DetectedActivityResponse dar) {
ActivityRecognitionResult arr = dar.getActivityRecognitionResult();
}
})
Per ulteriori informazioni su cosa puoi fare con i dati della richiesta, consulta Ottenere i dati di Snapshot.