É possível usar a API Snapshot para receber informações sobre o ambiente atual do usuário. Com a API Snapshot, é possível acessar vários indicadores contextuais:
- Atividade detectada do usuário, como quando ele caminha ou dirige.
- Beacons por perto que você registrou.
- Estado dos fones de ouvido, conectados ou não.
- Localização, que inclui latitude e longitude.
O sistema armazena esses valores em cache para que possam ser retornados rapidamente. Se não houver dados, a detecção e a inferência serão realizadas para retornar valores de estado atualizados. A API Awareness retorna o tipo de dados atual para tipos de contexto que têm uma API pública.
Cada indicador de contexto tem um método da API Snapshot correspondente. Por exemplo, para
receber a atividade detectada atual, chame
getDetectedActivity(),
use um SuccessListener para receber um DetectedActivityResponse,
depois chame getActivityRecognitionResult()
para retornar um ActivityRecognitionResult
de onde você pode receber os dados reais da solicitação.
O exemplo a seguir mostra como receber a última atividade detectada:
        Awareness.getSnapshotClient(this).getDetectedActivity()
            .addOnSuccessListener(new OnSuccessListener<DetectedActivityResponse>() {
                @Override
                public void onSuccess(DetectedActivityResponse dar) {
                    ActivityRecognitionResult arr = dar.getActivityRecognitionResult();
                }
            })
Para mais informações sobre o que você pode fazer com os dados de solicitação, consulte Receber dados de snapshot.