Google Fit API - данные в реальном времени

Я пытаюсь показать в своем приложении шаги, которые пользователь прошел за день в режиме реального времени, но я не могу. Я пытался получить шаги, используя TYPE_STEP_COUNT_CUMULATIVE но я могу выполнить все действия со дня, когда пользователь начал использовать приложение.

Когда я пытался использовать другой тип, например DELTA, это не работает. Не уверен, что я что-то упустил. Я могу получить ежедневные шаги из HISTORY API, но не могу использовать их в режиме реального времени, потому что пользовательский интерфейс не позволяет использовать await(),

Какие-либо предложения?

1 ответ

com.google.step_count.cumulative Тип данных представляет данные подсчета шагов в виде суммы с начала подсчета. Так что это не тот, который вам нужен.

Из этой документации здесь утверждается, что Google Fit также предоставляет простой доступ к ежедневной сумме указанного типа данных. Использовать [ HistoryApi.readDailyTotal()] ( https://developers.google.com/android/reference/com/google/android/gms/fitness/HistoryApi, com.google.android.gms.fitness.data.DataType)) метод для получения типа данных, который вы указываете на полночь текущего дня в текущем часовом поясе устройства. Например, передать в TYPE_STEP_COUNT_DELTA тип данных для этого метода для получения ежедневных итоговых шагов. Вы можете передать мгновенный тип данных, который имеет совокупный ежедневный итог.

Но если вам нужны данные в реальном времени, вам нужно использовать Sensors API вместе с Recording API, Источник: Запись фитнес-данных

Для получения дополнительной информации, проверьте этот связанный вопрос SO:

Другие вопросы по тегам