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

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

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

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

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

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

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

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