API Google Fit, включая REST API Google Fit, станут недоступны после 30 июня 2025 г. С 1 мая 2024 г. разработчики не смогут зарегистрироваться для использования этих API .
Для данных, которые можно записывать непрерывно (с несколькими точками данных за определенный период времени), платформа Google Fit может агрегировать эти данные и возвращать рассчитанные результаты. Это может быть среднее значение или итоговое значение. Вы можете сэкономить время на этих расчетах и легко показать пользователям вашего приложения полезные сводки или средние значения, читая агрегированные данные.
Чтобы прочитать агрегированные данные, вам нужно выбрать тип данных, временной диапазон и что-то, по чему можно «сгруппировать» (или сгруппировать) данные. Вы можете группировать данные несколькими способами:
Период времени
Сгруппируйте агрегированные данные по часам или дням. Например, посмотрите шаги или калории, сожженные за день.
Тип деятельности
Сгруппируйте агрегированные данные по типам действий. Например, для данных о сне за неделю будет отдельный сегмент для каждого типа активности сна (легкий, глубокий и быстрый).
Сегмент активности
Сгруппируйте агрегированные данные по сегментам активности за период времени. Например, если пользователь отправился на пробежку с 9 до 10 утра, но бегал первые 20 минут, сидел 10 минут, гулял 15 минут и бегал 15 минут, это считается 4 сегментами активности и вернет 4 сегмента.
Сессия
Используйте временные границы сеансов для агрегирования данных. Например, если пользователь совершил 2 пробежки, которые были зарегистрированы как 2 сеанса (утренняя пробежка и дневная пробежка), вы можете сегментировать сеансы, чтобы узнать среднее количество шагов или среднюю скорость каждого пробега.
Активность
Используйте эти типы данных для чтения агрегированных данных о здоровье и самочувствии.
Сводка активности
Общее время и количество сегментов для определенного действия за период времени. Каждая точка данных представляет собой сводку всех сегментов активности для определенного типа активности за определенный интервал времени.
Общее время, потраченное на действие во всех сегментах временного диапазона.
FIELD_NUM_SEGMENTS ( int — количество)
Количество различных сегментов активности за временной интервал этой точки данных.
Сводная информация о базальном уровне метаболизма (BMR)
Каждая точка данных представляет собой среднюю, максимальную и минимальную скорость основного обмена пользователя за определенный период времени в килокалориях в день. Это полезно, если пользователь набрал или похудел в весе и, следовательно, его BMR изменился.
Средний BMR пользователя за определенный период времени.
max ( float — ккал в день)
Максимальный BMR пользователя за период времени.
мин ( float — ккал в день)
Минимальный BMR пользователя за определенный период времени.
Андроид
Имя
com.google.calories.bmr.summary
Объект типа данных
AGGREGATE_BASAL_METABOLIC_RATE_SUMMARY
Поля (формат — единицы измерения)
FIELD_AVERAGE ( float — ккал в день)
Средний BMR пользователя за определенный период времени.
FIELD_MAX ( float — ккал в день)
Максимальный BMR пользователя за период времени.
FIELD_MIN ( float — ккал в день)
Минимальный BMR пользователя за определенный период времени.
Сводка сожженных калорий
Совокупное или общее количество сожженных калорий в килокалориях за определенный период времени. Этот тип данных и его поля такие же, как и для мгновенного типа данных .
Сводка баллов кардиотренировок
Каждая точка данных представляет собой количество баллов кардиотренировок, заработанных за период времени.
Количество баллов кардиотренировок, заработанных за период времени, включая баллы, полученные с помощью множителей (больше баллов зарабатывается за более напряженную деятельность).
продолжительность ( float —минуты)
Время, за которое были заработаны баллы Heart Points, измеряется в минутах.
Андроид
Имя
com.google.heart_minutes.summary
Объект типа данных
AGGREGATE_HEART_POINTS
Поля (формат — единицы измерения)
FIELD_INTENSITY ( float — баллы сердца)
Количество баллов кардиотренировок, заработанных за период времени, включая баллы, полученные с помощью множителей (больше баллов зарабатывается за более напряженную деятельность).
FIELD_DURATION ( float — минуты)
Время, за которое были заработаны баллы Heart Points, измеряется в минутах.
Сводка минут перемещения
Общее количество минут хода за период времени. Этот тип данных и поля такие же, как и для мгновенного типа данных .
Обзор мощности
Каждая точка данных представляет собой среднюю, максимальную и минимальную мощность, вырабатываемую пользователем в ваттах за определенный период времени.
Средняя мощность, выработанная пользователем за период времени, в ваттах.
макс ( float — ватты)
Максимальная мощность, вырабатываемая пользователем за период времени, в ваттах.
мин ( float — ватты)
Минимальная мощность, вырабатываемая пользователем за период времени, в ваттах.
Андроид
Имя
com.google.power.summary
Объект типа данных
AGGREGATE_POWER_SUMMARY
Поля (формат — единицы измерения)
FIELD_AVERAGE ( float — ватты)
Средняя мощность, выработанная пользователем за период времени, в ваттах.
FIELD_MAX ( float — ватты)
Максимальная мощность, вырабатываемая пользователем за период времени, в ваттах.
FIELD_MIN ( float — ватты)
Минимальная мощность, вырабатываемая пользователем за период времени, в ваттах.
Сводка по разнице в количестве шагов
Каждая точка данных представляет общее количество шагов за период времени. Этот тип данных и его поля такие же, как и для мгновенного типа данных .
Тело
Используйте эти типы данных для чтения агрегированных данных об измерениях тела.
Сводка по процентному содержанию жира в организме
Каждая точка данных представляет собой средний, максимальный и минимальный процент жира в организме пользователя за определенный период времени.
ОТДЫХ
Имя
com.google.body.fat.percentage.summary
Области разрешений OAuth
https://www.googleapis.com/auth/fitness.body.read
Поля (формат — единицы измерения)
среднее ( float — процент)
Средний процент жира в общей массе тела пользователя за определенный период времени.
макс ( float — процент)
Максимальный процент жира в общей массе тела пользователя за определенный период времени.
мин ( float — процент)
Минимальный процент жира в общей массе тела пользователя за определенный период времени.
Андроид
Имя
com.google.body.fat.percentage.summary
Объект типа данных
AGGREGATE_BODY_FAT_PERCENTAGE_SUMMARY
Поля (формат — единицы измерения)
FIELD_AVERAGE ( float — проценты)
Средний процент жира в общей массе тела пользователя за определенный период времени.
FIELD_MAX ( float — проценты)
Максимальный процент жира в общей массе тела пользователя за определенный период времени.
FIELD_MIN ( float — процент)
Минимальный процент жира в общей массе тела пользователя за определенный период времени.
Сводка сердечного ритма
Каждая точка данных представляет собой среднюю, максимальную и минимальную частоту пульса пользователя за период времени в ударах в минуту.
ОТДЫХ
Имя
com.google.heart_rate.summary
Области разрешений OAuth
https://www.googleapis.com/auth/fitness.body.read
Поля (формат — единицы измерения)
среднее ( float число — ударов в минуту)
Средняя частота пульса пользователя в ударах в минуту за определенный период времени.
макс ( float число — ударов в минуту)
Максимальная частота пульса пользователя в ударах в минуту за определенный период времени.
мин ( float число — ударов в минуту)
Минимальная частота пульса пользователя в ударах в минуту за определенный период времени.
Андроид
Имя
com.google.heart_rate.summary
Объект типа данных
AGGREGATE_HEART_RATE_SUMMARY
Поля (формат — единицы измерения)
FIELD_AVERAGE ( float — ударов в минуту)
Средняя частота пульса пользователя в ударах в минуту за определенный период времени.
FIELD_MAX ( float — ударов в минуту)
Максимальная частота пульса пользователя в ударах в минуту за определенный период времени.
FIELD_MIN ( float число — ударов в минуту)
Минимальная частота пульса пользователя в ударах в минуту за определенный период времени.
Сводка по высоте
Каждая точка данных представляет собой средний, максимальный и минимальный рост пользователя за период времени в метрах.
ОТДЫХ
Имя
com.google.height.summary
Области разрешений OAuth
https://www.googleapis.com/auth/fitness.body.read
Поля (формат — единицы измерения)
среднее значение ( float — метры)
Средний рост пользователя за период времени в метрах.
макс ( float — метры)
Максимальный рост пользователя за период времени в метрах.
мин ( float — метры)
Минимальный рост пользователя за период времени в метрах.
Андроид
Имя
com.google.height.summary
Объект типа данных
AGGREGATE_HEIGHT_SUMMARY
Поля (формат — единицы измерения)
FIELD_AVERAGE ( float — метры)
Средний рост пользователя за период времени в метрах.
FIELD_MAX ( float — метры)
Максимальный рост пользователя за период времени в метрах.
FIELD_MIN ( float — метры)
Минимальный рост пользователя за период времени в метрах.
Сводка по весу
Каждая точка данных представляет собой средний, максимальный и минимальный вес пользователя за период времени в килограммах.
ОТДЫХ
Имя
com.google.weight.summary
Области разрешений OAuth
https://www.googleapis.com/auth/fitness.body.read
Поля (формат — единицы измерения)
среднее ( float —кг)
Средняя масса тела пользователя за период времени в килограммах.
макс ( float — кг)
Максимальная масса тела пользователя за период времени в килограммах.
мин ( float — кг)
Минимальная масса тела пользователя за период времени в килограммах.
Андроид
Имя
com.google.weight.summary
Объект типа данных
AGGREGATE_WEIGHT_SUMMARY
Поля (формат — единицы измерения)
FIELD_AVERAGE ( float — кг)
Средняя масса тела пользователя за период времени в килограммах.
FIELD_MAX ( float — кг)
Максимальная масса тела пользователя за период времени в килограммах.
FIELD_MIN ( float — кг)
Минимальная масса тела пользователя за период времени в килограммах.
Расположение
Используйте эти типы данных для чтения агрегированных данных о местоположении.
Дельта расстояния
Каждая точка данных представляет общее расстояние, пройденное пользователем за период времени, в метрах. Этот тип данных и его поля такие же, как и для мгновенного типа данных .
Ограничительная рамка местоположения
Каждая точка данных представляет собой ограничивающую рамку , рассчитанную для точек местоположения пользователя за определенный период времени. Каждая ограничивающая рамка имеет четыре поля, представляющие четыре угла ограничивающей рамки.
Минимальная широта ограничивающей рамки, представленной в виде плавающей точки, в градусах.
низкая долгота ( float —градусы)
Минимальная долгота ограничивающей рамки, представленной в виде плавающей точки, в градусах.
высокая широта ( float —градусы)
Максимальная широта ограничивающей рамки, представленной в виде плавающей точки, в градусах.
большая долгота ( float —градусы)
Максимальная долгота ограничивающей рамки, представленной в виде плавающей точки, в градусах.
Андроид
Имя
com.google.location.bounding_box
Объект типа данных
AGGREGATE_LOCATION_BOUNDING_BOX
Поля (формат — единицы измерения)
FIELD_LOW_LATITUDE ( float — градусы)
Широта нижнего левого угла ограничивающей рамки, представленной в виде плавающей точки, в градусах.
FIELD_LOW_LONGITUDE ( float — градусы)
Долгота нижнего левого угла ограничивающей рамки, представленной в виде плавающей точки, в градусах.
FIELD_HIGH_LATITUDE ( float — градусы)
Широта верхнего правого угла ограничивающей рамки, представленной в виде плавающей точки, в градусах.
FIELD_HIGH_LONGITUDE ( float — градусы)
Долгота верхнего правого угла ограничивающей рамки, представленной в виде плавающей точки, в градусах.
Сводка скорости
Каждая точка данных представляет среднюю, максимальную и минимальную скорость, с которой пользователь проезжал за определенный период времени, в метрах в секунду.
Средняя скорость пользователя за период времени в метрах в секунду.
max ( float — метры в секунду)
Максимальная скорость пользователя за определенный период времени в метрах в секунду.
мин ( float — метры в секунду)
Минимальная скорость пользователя за период времени в метрах в секунду.
Андроид
Имя
com.google.speed.summary
Объект типа данных
AGGREGATE_SPEED_SUMMARY
Поля (формат — единицы измерения)
среднее ( float — метры в секунду)
Средняя скорость пользователя за период времени в метрах в секунду.
max ( float — метры в секунду)
Максимальная скорость пользователя за определенный период времени в метрах в секунду.
мин ( float — метры в секунду)
Минимальная скорость пользователя за период времени в метрах в секунду.
Питание
Используйте эти типы данных для чтения агрегированных данных о питании.
Обзор гидратации
Каждая точка данных представляет общий объем воды, потребленный пользователем за период времени, в литрах. Этот тип данных и его поля такие же, как и для мгновенного типа данных .
Краткое описание питания
Каждая точка данных представляет собой сумму всех записей о питании за определенный период времени. В поле питательных веществ каждое значение представляет собой сумму питательных веществ по всем записям за период времени.
Если питательного вещества не было ни в одной из записей, его не будет и в сводной карте. Если все записи за период времени относятся к одному и тому же приему пищи, также будет установлен тип приема пищи.
питательные вещества ( Map<String> — калории/граммы)
Общее количество питательных веществ в пище, съеденной за определенный период времени.
Принятые значения
"key": "calories" // Calories in kcal
"key": "fat.total" // Total fat in grams
"key": "fat.saturated" // Saturated fat in grams
"key": "fat.unsaturated" // Unsaturated fat in grams
"key": "fat.polyunsaturated" // Polyunsaturated fat in grams
"key": "fat.monounsaturated" // Monounsaturated fat in grams
"key": "fat.trans" // Trans fat in grams
"key": "cholesterol" // Cholesterol in milligrams
"key": "sodium" // Sodium in milligrams
"key": "potassium" // Potassium in milligrams
"key": "carbs.total" // Total carbohydrates in grams
"key": "dietary_fiber" // Dietary fiber in grams
"key": "sugar" // Amount of sugar in grams
"key": "protein" // Protein amount in grams
Андроид
Имя
com.google.nutrition.summary
Объект типа данных
AGGREGATE_NUTRITION_SUMMARY
Поля (формат — единицы измерения)
FIELD_MEAL_TYPE ( int — перечисление)
Какой прием пищи ел пользователь (указывается, если все записи за период времени относятся к одному и тому же приему пищи).
Общее количество питательных веществ в пище, съеденной за определенный период времени.
Принятые значения
NUTRIENT_CALORIES // Calories in kcal
NUTRIENT_TOTAL_FAT // Total fat in grams
NUTRIENT_SATURATED_FAT // Saturated fat in grams
NUTRIENT_UNSATURATED_FAT // Unsaturated fat in grams
NUTRIENT_POLYUNSATURATED_FAT // Polyunsaturated fat in grams
NUTRIENT_MONOUNSATURATED_FAT // Monounsaturated fat in grams
NUTRIENT_TRANS_FAT // Trans fat in grams
NUTRIENT_CHOLESTEROL // Cholesterol in milligrams
NUTRIENT_SODIUM // Sodium in milligrams
NUTRIENT_POTASSIUM // Potassium in milligrams
NUTRIENT_TOTAL_CARBS // Total carbohydrates in grams
NUTRIENT_DIETARY_FIBER // Dietary fiber in grams
NUTRIENT_SUGAR // Amount of sugar in grams
NUTRIENT_PROTEIN // Protein amount in grams
Здоровье
Используйте эти типы данных для чтения агрегированных медицинских данных и данных о здоровье.
Сводка уровня глюкозы в крови
Каждая точка данных представляет собой средний, минимальный и максимальный уровень или концентрацию глюкозы в крови за определенный период времени, измеряемый в ммоль/л, где 1 ммоль/л равен 18 мг/дл.
Если значения каждого из этих полей одинаковы для всех измерений, выполненных в течение временного диапазона, вы увидите значение поля в возвращаемых данных:
временная связь с едой
временная связь со сном
источник образца
Если значения в разных измерениях различаются, поле будет исключено.
Средний уровень или концентрация глюкозы в крови пользователя за определенный период времени.
макс ( float — ммоль/л)
Максимальный уровень или концентрация глюкозы в крови пользователя за определенный период времени.
мин ( float — ммоль/л)
Минимальный уровень или концентрация глюкозы в крови пользователя за определенный период времени.
временная связь с едой ( int —enum) (необязательное поле)
Время снятия показаний по сравнению с тем, когда пользователь ел.
Принятые значения
"intVal": 1 // Reading wasn't taken before or after a meal
"intVal": 2 // Reading was taken during a fasting period
"intVal": 3 // Reading was taken before a meal
"intVal": 4 // Reading was taken after a meal
тип еды ( int —enum) (необязательное поле)
Какой тип еды ел пользователь в момент снятия показаний.
временная связь со сном ( int —enum) (необязательное поле)
Время снятия показаний по сравнению со временем, когда пользователь спал.
Принятые значения
"intVal": 1 // User was fully awake
"intVal": 2 // Before the user fell asleep
"intVal": 3 // After the user woke up
"intVal": 4 // While the user was still sleeping
источник образца ( int —enum) (необязательное поле)
Тип жидкости организма, используемой для измерения уровня глюкозы в крови.
Средний уровень или концентрация глюкозы в крови пользователя за определенный период времени.
FIELD_MAX ( float — ммоль/л)
Максимальный уровень или концентрация глюкозы в крови пользователя за определенный период времени.
FIELD_MIN ( float — ммоль/л)
Минимальный уровень или концентрация глюкозы в крови пользователя за определенный период времени.
FIELD_TEMPORAL_RELATION_TO_MEAL ( int —enum) (необязательное поле)
Время снятия показаний по сравнению с тем, когда пользователь ел.
Принятые значения
FIELD_TEMPORAL_RELATION_TO_MEAL_GENERAL // Reading wasn't taken before or after a meal
FIELD_TEMPORAL_RELATION_TO_MEAL_FASTING // Reading was taken during a fasting period
FIELD_TEMPORAL_RELATION_TO_MEAL_BEFORE_MEAL // Reading was taken before a meal
FIELD_TEMPORAL_RELATION_TO_MEAL_AFTER_MEAL // Reading was taken after a meal
FIELD_MEAL_TYPE ( int —enum) (необязательное поле)
Какой тип еды ел пользователь в момент снятия показаний.
FIELD_TEMPORAL_RELATION_TO_SLEEP ( int —enum) (необязательное поле)
Время снятия показаний по сравнению с временем, когда пользователь спал.
Принятые значения
TEMPORAL_RELATION_TO_SLEEP_FULLY_AWAKE // User was fully awake.
TEMPORAL_RELATION_TO_SLEEP_BEFORE_SLEEP // Before the user fell asleep.
TEMPORAL_RELATION_TO_SLEEP_ON_WAKING // After the user woke up.
TEMPORAL_RELATION_TO_SLEEP_DURING_SLEEP // While the user was still sleeping.
FIELD_BLOOD_GLUCOSE_SPECIMEN_SOURCE ( int — перечисление) (необязательное поле)
Тип жидкости организма, используемой для измерения уровня глюкозы в крови.
Каждая точка данных представляет собой среднее, минимальное и максимальное артериальное давление за определенный период времени, измеренное в мм рт. ст.
Если значения каждого из этих полей одинаковы для всех измерений, выполненных в течение временного диапазона, вы увидите значение поля в возвращаемых данных:
положение тела
место измерения
Если значения в разных измерениях различаются, поле будет исключено.
Среднее систолическое артериальное давление пользователя за определенный период времени.
максимальное систолическое ( float — мм рт. ст.)
Максимальное систолическое артериальное давление пользователя за определенный период времени.
мин. систолическое ( float — мм рт. ст.)
Минимальное систолическое артериальное давление пользователя за определенный период времени.
среднее диастолическое давление ( float — мм рт. ст.)
Среднее диастолическое артериальное давление пользователя за определенный период времени.
максимальное диастолическое давление ( float — мм рт. ст.)
Максимальное диастолическое артериальное давление пользователя за определенный период времени.
мин. диастолическое давление ( float — мм рт. ст.)
Минимальное диастолическое артериальное давление пользователя за определенный период времени.
положение тела ( int —enum) (необязательное поле)
Положение тела пользователя во время измерения.
Принятые значения
"intVal": 1 // Standing up
"intVal": 2 // Sitting down
"intVal": 3 // Lying down
"intVal": 4 // Reclining
место измерения ( int —enum) (необязательное поле)
На какой руке и части руки производилось измерение.
Принятые значения
"intVal": 1 // Left wrist
"intVal": 2 // Right wrist
"intVal": 3 // Left upper arm
"intVal": 4 // Right upper arm
Андроид
Имя
com.google.blood_pressure.summary
Объект типа данных
AGGREGATE_BLOOD_PRESSURE_SUMMARY
Поля (формат — единицы измерения)
FIELD_BLOOD_PRESSURE_SYSTOLIC_AVERAGE ( float — мм рт. ст.)
Среднее систолическое артериальное давление пользователя за определенный период времени.
FIELD_BLOOD_PRESSURE_SYSTOLIC_MAX ( float — мм рт. ст.)
Максимальное систолическое артериальное давление пользователя за определенный период времени.
FIELD_BLOOD_PRESSURE_SYSTOLIC_MIN ( float — мм рт. ст.)
Минимальное систолическое артериальное давление пользователя за определенный период времени.
FIELD_BLOOD_PRESSURE_DIASTOLIC_AVERAGE ( float — мм рт. ст.)
Среднее диастолическое артериальное давление пользователя за определенный период времени.
FIELD_BLOOD_PRESSURE_DIASTOLIC_MAX ( float — мм рт.ст.)
Максимальное диастолическое артериальное давление пользователя за определенный период времени.
FIELD_BLOOD_PRESSURE_DIASTOLIC_MIN ( float — мм рт. ст.)
Минимальное диастолическое артериальное давление пользователя за определенный период времени.
FIELD_BODY_POSITION ( int —enum) (необязательное поле)
Положение тела пользователя во время измерения.
Принятые значения
BODY_POSITION_STANDING // Standing up
BODY_POSITION_SITTING // Sitting down
BODY_POSITION_LYING_DOWN // Lying down
BODY_POSITION_SEMI_RECUMBENT // Reclining
FIELD_BLOOD_PRESSURE_MEASUREMENT_LOCATION ( int —enum) (необязательное поле)
На какой руке и части руки производилось измерение.
Принятые значения
BLOOD_PRESSURE_MEASUREMENT_LOCATION_LEFT_WRIST // Left wrist
BLOOD_PRESSURE_MEASUREMENT_LOCATION_RIGHT_WRIST // Right wrist
BLOOD_PRESSURE_MEASUREMENT_LOCATION_LEFT_UPPER_ARM // Left upper arm
BLOOD_PRESSURE_MEASUREMENT_LOCATION_RIGHT_UPPER_ARM // Right upper arm
Сводка температуры тела
Каждая точка данных представляет собой среднюю, минимальную и максимальную температуру тела пользователя за определенный период времени.
Также будет указано место проведения измерения на теле, если место измерения было одинаковым для всех точек данных в интервале времени.
Каждая точка данных представляет собой среднее, минимальное и максимальное насыщение крови кислородом и скорость дополнительного потока кислорода пользователя за определенный интервал времени.
Если значения каждого из этих полей одинаковы для всех измерений, выполненных в течение временного диапазона, вы увидите значение поля в возвращаемых данных:
режим проведения кислородной терапии
система насыщения кислородом
метод измерения насыщения кислородом
Если значения в разных измерениях различаются, поле будет исключено.
[null,null,["Последнее обновление: 2024-10-30 UTC."],[[["Google Fit uses aggregate data types to provide summaries of health and wellness metrics, like steps, calories, and heart rate, over specific time periods."],["Developers can retrieve aggregated data by specifying the data type, time range, and how the data should be grouped (e.g., by time period, activity type, or session)."],["Data is categorized into activity, body, and location, each with specific data types and fields providing aggregated values like totals, averages, minimums, and maximums."],["Aggregate data types are read-only, meaning you can only retrieve data, not write or modify it."],["Accessing aggregate data types requires appropriate OAuth permissions, and Google Fit offers both REST and Android APIs for retrieval."]]],[]]