Разработка интерактивных схем с использованием API Google Health.

API Google Health отслеживает количество шагов и данные об активности пользователей, используя тип данных «интервал steps . Количество шагов представляет собой фундаментальный показатель ежедневной физической активности, помогая разработчикам отслеживать прогресс в фитнесе, рассчитывать расход энергии и создавать для пользователей сводки ежедневной активности.

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

Поддерживаемые типы данных

API поддерживает следующие типы данных для отслеживания количества шагов:

Таблица: Типы данных шагов в Google Health API
Тип данных
dataType
параметр filter
Записывать
тип
Доступный
операции
Объем Вебхук
поддерживать
Истинные нули
поддерживать
Шаги
steps
steps
Интервал список, сверка, свертка, ежедневная сводка .activity_and_fitness.readonly
.activity_and_fitness.writeonly

В следующих разделах представлены технические подробности о типе данных steps , включая примеры представления REST-запросов и рекомендации по интеграции.

Требуемые области применения

Для доступа к этому типу данных ваше приложение должно запросить следующие области действия OAuth:

  • Читайте : https://www.googleapis.com/auth/googlehealth.activity_and_fitness.readonly
  • Написать : https://www.googleapis.com/auth/googlehealth.activity_and_fitness.writeonly

Руководящие принципы

При интеграции функции отслеживания шагов в ваше приложение следуйте этим рекомендациям по проектированию и внедрению.

Ежедневный обзор

Для точного суммирования ежедневного количества шагов с учетом поездок, смены часовых поясов или перехода на летнее время не выполняйте вычисления продолжительности на стороне клиента. Вместо этого запросите конечную точку dailyRollUp , которая автоматически устраняет пробелы в физических данных, используя смещения UTC. Сводные данные возвращают объект StepsRollupValue , содержащий поле countSum , представляющее общее количество накопленных шагов за запрошенный день.

Разработка пользовательских интерфейсов (согласование)

При создании элементов пользовательского интерфейса для отображения данных о шагах используйте конечную точку reconcile . Если несколько источников данных (например, умные часы и мобильный телефон) одновременно записывают шаги, конечная точка reconcile разрешает конфликты и объединяет потоки, возвращая единый согласованный поток данных.

Внутридневное отслеживание и гистограммы

Для отображения подробной информации об активности пользователей в течение дня (например, в виде диаграмм и графиков):

  • Почасовые гистограммы: запросите конечную точку rollUp , указав длительность (например, 3600s для 1 часа) с помощью параметра windowSize .
  • Все записи о шагах: используйте конечную точку list для получения наиболее подробных, необработанных записей о шагах.

Как конечные точки rollUp , так и reconcile принимают параметр запроса dataSourceFamily , что позволяет фильтровать данные из определенных групп источников.

Синхронизация в реальном времени с использованием веб-хуков.

Подпишитесь на сбор данных о steps , чтобы получать уведомления в режиме реального времени об импорте или синхронизации новых данных о шагах. Вместо опроса REST-конечных точек, обновляйте панели мониторинга на стороне клиента динамически в ответ на эти уведомления веб-перехватчика. Подробную информацию о настройке подписок см. в разделе «Подписки на веб-перехватчики» .

Обработка истинных нулей

API Google Health использует истинные нули для определения периодов малоподвижного образа жизни. Если пользователь активен или носит трекер, но не ходит, трекер записывает явные интервалы шагов со count "0" . Это позволяет различать периоды, когда пользователь сделал ноль шагов, нося устройство, и периоды, когда он его вообще не носил. Более подробную информацию см. в руководстве по наличию данных и истинным нулям .