汇总数据类型

对于可连续记录的数据(同一时间段内有多个数据点),Google 健身平台可以汇总此数据并返回计算的结果。这可以是平均衡量结果,也可以是摘要/总计。通过读取汇总数据,您可以节省进行这些计算所用的时间,并轻松向应用用户显示有用的摘要或平均值。

如需读取汇总数据,您需要选择数据类型、时间范围以及要将数据添加到(或分组)的数据。您可以通过几种不同的方式对数据进行存储分区:

时间段
按小时或每天对汇总数据进行分桶。例如,查看每日步数或消耗的卡路里。
活动类型
按活动类型对汇总数据进行分桶。例如,对于一周的睡眠数据,每种睡眠活动类型(浅睡眠、深睡眠和快速眼动睡眠 (REM))都有一个范围。
活动细分
按活动细分特定时间段的汇总数据。例如,如果用户在上午 9 点到上午 10 点之间跑步,但前 20 分钟跑步,坐下 10 分钟,步行 15 分钟并跑步 15 分钟,那么这 4 个活动细分会被视为 4 个活动细分,会返回 4 个区间。
会话
使用会话的时间范围来汇总数据。例如,如果用户执行了 2 次跑步,并计为 2 次会话(晨跑和下午跑步),您可以按会话分桶,了解每次跑步的平均步数或平均速度。

Activity

使用这类数据读取汇总的健康与健身数据。

运动里程摘要

特定时间段内特定活动的总时间及数量。 每个数据点表示一段时间内特定 Activity 类型的所有 Activity 细分的摘要。

REST

Namecom.google.activity.summary
OAuth 权限范围
https://www.googleapis.com/auth/fitness.activity.read
字段(格式 - 单位)
activityint - 枚举)
用户正在进行的活动的类型。请点击此处查看活动类型。
durationint - 毫秒)
时间范围内所有细分上某项活动的总时长。
细分受众群数量int - 数量)
此数据点的时间段内不同活动细分的数量。

Android

Namecom.google.activity.summary
数据类型对象AGGREGATE_ACTIVITY_SUMMARY
字段(格式 - 单位)
FIELD_ACTIVITYint - 枚举)
用户正在进行的活动的类型。请点击此处查看活动类型。
FIELD_DURATIONint - 毫秒)
时间范围内所有细分上某项活动的总时长。
FIELD_NUM_SEGMENTSint - 计数)
此数据点的时间段内不同活动细分的数量。

基础代谢率 (BMR) 摘要

每个数据点表示用户在该时间范围内的平均基础代谢率、最大和最低基础代谢率(以千焦耳为单位)。如果用户增重或减肥,且其 BMR 发生变化,这会非常有用。

REST

Namecom.google.calories.bmr.summary
OAuth 权限范围
https://www.googleapis.com/auth/fitness.activity.read
字段(格式 - 单位)
平均值float - 千卡/天)
用户在一段时间内的平均 BMR。
maxfloat - 千卡/天)
用户在一段时间内的最高 BMR。
分钟float - 千卡/天)
用户在一段时间内的最低 BMR。

Android

Namecom.google.calories.bmr.summary
数据类型对象AGGREGATE_BASAL_METABOLIC_RATE_SUMMARY
字段(格式 - 单位)
FIELD_AVERAGEfloat - 千卡/天)
用户在一段时间内的平均 BMR。
FIELD_MAXfloat - 千卡/天)
用户在一段时间内的最高 BMR。
FIELD_MINfloat - 千卡/天)
用户在一段时间内的最低 BMR。

消耗卡路里数摘要

一段时间内消耗的卡路里总量或总千焦耳数。此数据类型及其字段与瞬时数据类型相同。

心肺强化分数摘要

每个数据点表示一段时间内获得的心肺强化分数。

REST

Namecom.google.heart_minutes.summary
OAuth 权限范围
https://www.googleapis.com/auth/fitness.activity.read
字段(格式 - 单位)
强度float - 心肺强化分数)
在一段时间内获得的心肺强化分数,包括乘法器获得的积分(在剧烈活动中获得的积分越多)。
时长float - 分钟)
获得心肺强化分数的时间(以分钟为单位)。

Android

Namecom.google.heart_minutes.summary
数据类型对象AGGREGATE_HEART_POINTS
字段(格式 - 单位)
FIELD_INTENSITYfloat - 心肺强化分数)
在一段时间内获得的心肺强化分数,包括乘法器获得的积分(在剧烈活动中获得的积分越多)。
FIELD_DURATIONfloat - 分钟)
获得心肺强化分数的时间(以分钟为单位)。

活动时间摘要

相应时间段内的总移动分钟数。此数据类型和字段与瞬时数据类型相同。

电源摘要

每个数据点都表示用户在一段时间内的平均功率、最大值和最低功率(以瓦特为单位)。

REST

Namecom.google.power.summary
OAuth 权限范围
https://www.googleapis.com/auth/fitness.activity.read
字段(格式 - 单位)
平均值float - 瓦特)
用户在一段时间内的平均功率(以瓦特为单位)。
maxfloat - 瓦特)
用户在一段时间内产生的最大功率(以瓦特为单位)。
minfloat - 瓦特)
用户在一段时间内生成的最小功率(以瓦特为单位)。

Android

Namecom.google.power.summary
数据类型对象AGGREGATE_POWER_SUMMARY
字段(格式 - 单位)
FIELD_AVERAGEfloat - 瓦特)
用户在一段时间内的平均功率(以瓦特为单位)。
FIELD_MAXfloat - 瓦特)
用户在一段时间内产生的最大功率(以瓦特为单位)。
FIELD_MINfloat - 瓦特)
用户在一段时间内生成的最小功率(以瓦特为单位)。

步数增量摘要

每个数据点表示相应时间段内的总步数。此数据类型及其字段与瞬时数据类型相同。

主体

使用这些数据类型读取汇总的身体测量数据。

体脂百分比摘要

每个数据点均表示用户在一段时间内的平均、最大和最低体脂百分比。

REST

Namecom.google.body.fat.percentage.summary
OAuth 权限范围
https://www.googleapis.com/auth/fitness.body.read
字段(格式 - 单位)
平均值float - 百分比)
在一段时间内,用户体脂总量中体脂总量的百分比。
maxfloat - 百分比)
一段时间内用户体脂总量的最大百分比。
分钟float - 百分比)
在一段时间内,用户体脂总量中体脂总量的百分比下限。

Android

Namecom.google.body.fat.percentage.summary
数据类型对象AGGREGATE_BODY_FAT_PERCENTAGE_SUMMARY
字段(格式 - 单位)
FIELD_AVERAGEfloat - 百分比)
在一段时间内,用户体脂总量中体脂总量的百分比。
FIELD_MAXfloat - 百分比)
一段时间内用户体脂总量的最大百分比。
FIELD_MINfloat - 百分比)
在一段时间内,用户体脂总量中体脂总量的百分比下限。

心率摘要

每个数据点表示用户在一段时间内的平均心率、最大心率和最低心率,以每分钟心跳次数计。

REST

Namecom.google.heart_rate.summary
OAuth 权限范围
https://www.googleapis.com/auth/fitness.body.read
字段(格式 - 单位)
平均float - bpm)
用户在一段时间内的平均心率,以每分钟心跳次数计。
maxfloat—bpm)
用户在一段时间内最大心率,以每分钟心跳次数计。
分钟 (float—bpm)
用户在一段时间内在一段时间内的每分钟心跳次数下限。

Android

Namecom.google.heart_rate.summary
数据类型对象AGGREGATE_HEART_RATE_SUMMARY
字段(格式 - 单位)
FIELD_AVERAGEfloat - bpm)
用户在一段时间内的平均心率,以每分钟心跳次数计。
FIELD_MAX (float—bpm)
用户在一段时间内最大心率,以每分钟心跳次数计。
FIELD_MIN (float—bpm)
用户在一段时间内在一段时间内的每分钟心跳次数下限。

身高总结

每个数据点都表示用户在一段时间内的平均高度、最大高度和最小高度(以米为单位)。

REST

Namecom.google.height.summary
OAuth 权限范围
https://www.googleapis.com/auth/fitness.body.read
字段(格式 - 单位)
averagefloat - 米)
用户在一段时间内的平均高度(以米为单位)。
maxfloat - 米)
用户在一段时间内的最大高度(以米为单位)。
分钟float - 米)
用户在一段时间内的最小高度(以米为单位)。

Android

Namecom.google.height.summary
数据类型对象AGGREGATE_HEIGHT_SUMMARY
字段(格式 - 单位)
FIELD_AVERAGEfloat - 米)
用户在一段时间内的平均高度(以米为单位)。
FIELD_MAXfloat - 米)
用户在一段时间内的最大高度(以米为单位)。
FIELD_MINfloat - 米)
用户在一段时间内的最小高度(以米为单位)。

体重摘要

每个数据点都表示用户在一段时间内的平均值、最大值和最小值(以千克为单位)。

REST

Namecom.google.weight.summary
OAuth 权限范围
https://www.googleapis.com/auth/fitness.body.read
字段(格式 - 单位)
一般float - 千克)
用户在一段时间内的平均体重,以千克为单位。
maxfloat-kg)
用户在一段时间内的最大体重,以千克为单位。
minfloat-kg)
用户在一段时间内的最小体重,以千克为单位。

Android

Namecom.google.weight.summary
数据类型对象AGGREGATE_WEIGHT_SUMMARY
字段(格式 - 单位)
FIELD_AVERAGEfloat - 千克)
用户在一段时间内的平均体重,以千克为单位。
FIELD_MAXfloat-kg)
用户在一段时间内的最大体重,以千克为单位。
FIELD_MINfloat-kg)
用户在一段时间内的最小体重,以千克为单位。

位置

使用这些数据类型读取汇总的位置数据。

距离增量

每个数据点都表示用户在一段时间内经过的总距离(以米为单位)。此数据类型及其字段与瞬时数据类型相同。

位置边界框

每个数据点表示一段时间内用户位置所计算的边界框。每个边界框都有四个字段,分别表示边界框的四个角。

REST

Namecom.google.location.bounding_box
OAuth 权限范围
https://www.googleapis.com/auth/fitness.location.read
字段(格式 - 单位)
最低纬度float - 度)
边界框的最小纬度,以浮点数表示。
经度(纬度)float - 度)
边界框的最小经度,以浮点数表示。
纬度float - 度)
边界框的纬度上限,以浮点数表示。
high 经度float - 度)
边界框的经度,以浮点数表示(以度为单位)。

Android

Namecom.google.location.bounding_box
数据类型对象AGGREGATE_LOCATION_BOUNDING_BOX
字段(格式 - 单位)
FIELD_LOW_LATITUDEfloat - 度)
边界框左下角的纬度,以浮点数表示。
FIELD_LOW_LONGITUDEfloat - 度)
边界框左下角的经度,以浮点数表示。
FIELD_HIGH_LATITUDEfloat - 度)
边界框右上角的纬度,以浮点数表示。
FIELD_HIGH_LONGITUDEfloat - 度)
边界框右上角的经度,以浮点数表示。

速度摘要

每个数据点表示用户在一段时间内平均移动的最大速度、最高速度和最低速度(以米/秒为单位)。

REST

Namecom.google.speed.summary
OAuth 权限范围
https://www.googleapis.com/auth/fitness.location.read
字段(格式 - 单位)
平均值float - 米/秒)
用户在一段时间内的平均速度(以米/秒为单位)。
maxfloat - 米/秒)
用户在一段时间内的最高速度(以米/秒为单位)。
分钟float - 米/秒)
用户在一段时间内的速度(以米/秒为单位)。

Android

Namecom.google.speed.summary
数据类型对象AGGREGATE_SPEED_SUMMARY
字段(格式 - 单位)
平均值float - 米/秒)
用户在一段时间内的平均速度(以米/秒为单位)。
maxfloat - 米/秒)
用户在一段时间内的最高速度(以米/秒为单位)。
分钟float - 米/秒)
用户在一段时间内的速度(以米/秒为单位)。

Nutrition

使用这些数据类型读取汇总的营养数据。

饮水概况

每个数据点表示用户在一段时间内消耗的水总量(以升为单位)。此数据类型及其字段与瞬时数据类型相同。

营养摘要

每个数据点表示一段时间内所有营养条目的总和。 在营养成分字段中,每个值表示在相应时间段内所有条目的营养价值总和。

如果营养成分不含任何条目,则其也不会出现在汇总映射中。如果相应时间段内的所有条目都针对同一餐餐点,系统也会设置膳食类型。

REST

Namecom.google.nutrition.summary
OAuth 权限范围
https://www.googleapis.com/auth/fitness.nutrition.read
字段(格式 - 单位)
膳食类型int - 枚举)
用户吃了哪种膳食(如果同一时间段内的所有条目都表示同一餐)。
营养素Map<String> - 卡路里/克)
一段时间内食物摄入的营养素总量。

Android

Namecom.google.nutrition.summary
数据类型对象AGGREGATE_NUTRITION_SUMMARY
字段(格式 - 单位)
FIELD_MEAL_TYPEint - 枚举)
用户吃了哪种膳食(如果同一时间段内的所有条目都表示同一餐)。
FIELD_NUTRIENTSMap<String> - 千克/克/毫克)
一段时间内食物摄入的营养素总量。

健康

使用这类数据读取汇总的医疗健康数据。

血糖汇总

每个数据点表示相应时间范围内的平均、最低和最大血糖水平或浓度,以 mmol/L 为单位,其中 1 mmol/L 为 18 mg/dL。

如果对于时间范围内进行的所有测量,每个字段的值都相同,则会在返回的数据中看到字段值:

  • 与膳食的时间关系
  • 时间与睡眠的关系
  • 样本来源

如果每次测量的值不同,则该字段将被排除。

REST

Namecom.google.blood_glucose.summary
OAuth 权限范围
https://www.googleapis.com/auth/fitness.blood_glucose.read
字段(格式 - 单位)
平均值 (float—mmol/L)
用户在一段时间内的平均血糖水平或浓度。
maxfloat - mmol/L)
用户在一段时间内的血糖水平或浓度上限。
分钟 (float—mmol/L)
用户在一段时间内的血糖水平或浓度。
时间与用餐的关系int - 枚举)(可选字段)
获取读数的时间与用户吃饭的时间进行比较。
膳食类型int - 枚举)(可选字段)
读取读数时用户吃什么类型的膳食。
时间与睡眠的关系int - 枚举)(可选字段)
获取读数的时间与用户睡觉的时间。
样本来源int - 枚举)(可选字段)
用于测量血糖的体液类型。

Android

Namecom.google.blood_glucose.summary
数据类型对象AGGREGATE_BLOOD_GLUCOSE_SUMMARY
字段(格式 - 单位)
FIELD_AVERAGE (float—mmol/L)
用户在一段时间内的平均血糖水平或浓度。
FIELD_MAX (float—mmol/L)
用户在一段时间内的血糖水平或浓度上限。
FIELD_MIN (float—mmol/L)
用户在一段时间内的血糖水平或浓度。
FIELD_TEMPORAL_RELATION_TO_MEALint - 枚举)(可选字段)
获取读数的时间与用户吃饭的时间进行比较。
FIELD_MEAL_TYPEint - 枚举)(可选字段)
读取读数时用户吃什么类型的膳食。
FIELD_TEMPORAL_RELATION_TO_SLEEPint - 枚举)(可选字段)
获取读数的时间与用户睡觉的时间。
FIELD_BLOOD_GLUCOSE_SPECIMEN_SOURCEint - 枚举)(可选字段)
用于测量血糖的体液类型。

血压摘要

每个数据点表示相应时间范围内的平均血压、最低血压和最大血压,以 mmHg 为单位。

如果对于时间范围内进行的所有测量,每个字段的值都相同,则会在返回的数据中看到字段值:

  • 身体位置
  • 测量位置

如果每次测量的值不同,则该字段将被排除。

REST

Namecom.google.blood_pressure.summary
OAuth 权限范围
https://www.googleapis.com/auth/fitness.blood_pressure.read
字段(格式 - 单位)
平均收缩压 (float—mmHg)
用户在一段时间内的平均收缩压。
最大收缩压 (float—mmHg)
用户在一段时间内的最大收缩压。
最低收缩压 (float—mmHg)
用户在一段时间内的收缩压下限。
平均舒张压 (float—mmHg)
用户在一段时间内的平均舒张压。
最大舒张压 (float—mmHg)
用户在一段时间内的最大舒张压。
舒张压最低 (float—mmHg)
用户在一段时间内的舒张压最低值。
body positionint - 枚举值,可选字段)
测量时用户的身体姿势。
衡量位置int - 枚举)(可选字段)
进行测量的实验组和实验组。

Android

Namecom.google.blood_pressure.summary
数据类型对象AGGREGATE_BLOOD_PRESSURE_SUMMARY
字段(格式 - 单位)
FIELD_BLOOD_PRESSURE_SYSTOLIC_AVERAGEfloat - mmHg)
用户在一段时间内的平均收缩压。
FIELD_BLOOD_PRESSURE_SYSTOLIC_MAX (float—mmHg)
用户在一段时间内的最大收缩压。
FIELD_BLOOD_PRESSURE_SYSTOLIC_MIN (float—mmHg)
用户在一段时间内的收缩压下限。
FIELD_BLOOD_PRESSURE_DIASTOLIC_AVERAGEfloat - mmHg)
用户在一段时间内的平均舒张压。
FIELD_BLOOD_PRESSURE_DIASTOLIC_MAX (float—mmHg)
用户在一段时间内的最大舒张压。
FIELD_BLOOD_PRESSURE_DIASTOLIC_MIN (float—mmHg)
用户在一段时间内的舒张压最低值。
FIELD_Body_POSITIONint - 枚举)(可选字段)
测量时用户的身体姿势。
FIELD_BLOOD_PRESSURE_MEASUREMENT_LOCATIONint - 枚举)(可选字段)
进行测量的实验组和实验组。

体温摘要

每个数据点表示用户在特定时间范围内的平均、最低和最高体温。

如果相应时间间隔内所有数据点的测量位置都相同,那么测量对象在身体上的测量位置也将保持不变。

REST

Namecom.google.body.temperature.summary
OAuth 权限范围
https://www.googleapis.com/auth/fitness.body_temperature.read
字段(格式 - 单位)
平均值float - 摄氏度)
用户在一段时间内的体温平均值。
maxfloat - 摄氏度)
用户在一段时间内的体温最大值。
minfloat - 摄氏度)
用户在一段时间内的体温下限。
衡量位置int - 枚举)(可选字段)
测量体温是在用户的身体部位。

Android

Namecom.google.body.temperature.summary
数据类型对象AGGREGATE_Body_TEMPERATURE_SUMMARY
字段(格式 - 单位)
FIELD_AVERAGEfloat - 摄氏度)
用户在一段时间内的体温平均值。
FIELD_MAXfloat - 摄氏度)
用户在一段时间内的体温最大值。
FIELD_MINfloat - 摄氏度)
用户在一段时间内的体温下限。
FIELD_Body_TEMPERATURE_MEASUREMENT_LOCATIONint - 枚举)(可选字段)
测量体温是在用户的身体部位。

血氧饱和度摘要

每个数据点表示一段时间内用户的平均血氧饱和度和补充氧气流速。

如果对于时间范围内进行的所有测量,每个字段的值都相同,则会在返回的数据中看到字段值:

  • 氧疗给药模式
  • 血氧饱和度系统
  • 血氧饱和度测量方法

如果每次测量的值不同,则该字段将被排除。

REST

Namecom.google.oxygen_saturation.summary
OAuth 权限范围
https://www.googleapis.com/auth/fitness.oxygen_saturation.read
字段(格式 - 单位)
平均氧饱和度float - 百分比)
用户在一段时间内的平均氧饱和度。
最大氧饱和度float - 百分比)
用户在一段时间内的最大氧饱和度。
最低氧饱和度float - 百分比)
用户在一段时间内的最低氧饱和度。
平均补充氧气流速 (float—L/min)
用户在一段时间内的平均补充氧气流速。
最大补充氧流速 (float—L/min)
用户在一段时间内的补充氧气流速上限。
最低补充氧气流速 (float—L/min)
用户在一段时间内的最小补充氧流率。
氧气疗法管理模式int - 枚举)(可选字段)
氧气治疗的治疗方式。
可以不存在,如果是鼻腔给药,可以为 1
氧饱和度系统int - 枚举,可选字段)
测量血氧饱和度。
可能不存在,如果使用外周毛细管测量,1
氧饱和度测量方法int - 枚举)(可选字段)
如何测量氧饱和度。
如果不存在脉搏血氧测量值,该值可能不存在,也可能为 1

Android

Namecom.google.oxygen_saturation.summary
数据类型对象AGGREGATE_OXYGEN_SATURATION_SUMMARY
字段(格式 - 单位)
FIELD_OXYGEN_SATURATION_AVERAGEfloat - 百分比)
用户在一段时间内的平均氧饱和度。
FIELD_OXYGEN_SATURATION_MAXfloat - 百分比)
用户在一段时间内的最大氧饱和度。
FIELD_OXYGEN_SATURATION_MINfloat - 百分比)
用户在一段时间内的最低氧饱和度。
FIELD_SUPPLEMENTAL_OXYGEN_FLOW_RATE_AVERAGEfloat - 升/分钟)
用户在一段时间内的平均补充氧气流速。
FIELD_SUPPLEMENTAL_OXYGEN_FLOW_RATE_MAXfloat - 升/分钟)
用户在一段时间内的补充氧气流速上限。
FIELD_SUPPLEMENTAL_OXYGEN_FLOW_RATE_MINfloat - 升/分钟)
用户在一段时间内的最小补充氧流率。
FIELD_OXYGEN_TheRAPY_ADMINISTRATION_MODEint - 枚举)(可选字段)
氧气治疗的治疗方式。
可以不存在,如果是鼻腔给药,可以为 1
FIELD_OXYGEN_SATURATION_SYSTEMint - 枚举)(可选字段)
测量血氧饱和度。
可能不存在,如果使用外周毛细管测量,1
FIELD_OXYGEN_SATURATION_MEASUREMENT_METHODint - 枚举)(可选字段)
如何测量氧饱和度。
如果不存在脉搏血氧测量值,该值可能不存在,也可能为 1