Обзор API моментальных снимков

Вы можете использовать API Snapshot для получения информации о текущей среде пользователя. С API Snapshot вы можете получить доступ к различным контекстным сигналам :

  • Обнаруженная активность пользователя, например, когда он идет или едет на машине.
  • Зарегистрированные вами маяки поблизости.
  • Состояние наушников, подключены они или нет.
  • Местоположение, включающее широту и долготу.

Система кэширует эти значения, чтобы их можно было быстро вернуть. Если данных нет, выполняется зондирование и вывод для возврата новых значений состояния. API Awareness возвращает существующий тип данных для типов контекста, имеющих общедоступный API.

Каждый контекстный сигнал имеет соответствующий метод API Snapshot. Например, чтобы получить текущую обнаруженную активность, вы вызываете getDetectedActivity() , используете SuccessListener для получения DetectedActivityResponse , затем вызываете getActivityRecognitionResult() чтобы вернуть ActivityRecognitionResult из которого вы можете получить фактические данные запроса.

В следующем примере показано, как получить последнюю обнаруженную активность:

        Awareness.getSnapshotClient(this).getDetectedActivity()
            .addOnSuccessListener(new OnSuccessListener<DetectedActivityResponse>() {
                @Override
                public void onSuccess(DetectedActivityResponse dar) {
                    ActivityRecognitionResult arr = dar.getActivityRecognitionResult();
                }
            })

Дополнительную информацию о том, что можно сделать с данными запроса, см. в разделе Получение данных моментального снимка .