Google Fit REST 心率查询使用什么数据源 ID?

Jam*_*len 1 rest google-fit heartrate google-fit-api

我正在尝试使用Google Fit REST API检索每日心率汇总数据,但我很困难,因为要么我遗漏了某些内容,要么文档似乎非常不完整。我已经通过以下几个可用示例之一成功地检索了每日总步数:

请求网址

https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate

请求正文

{
  "aggregateBy": [{
    "dataTypeName": "com.google.step_count.delta",
    "dataSourceId": "derived:com.google.step_count.delta:com.google.android.gms:estimated_steps"
  }],
  "bucketByTime": { "durationMillis": 86400000 },
  "startTimeMillis": 1438705622000,
  "endTimeMillis": 1439310422000
}
Run Code Online (Sandbox Code Playgroud)

我找不到任何读取心率的示例,因此我尝试对其进行修改以获取心率。我发现这个数据类型列表具有以下数据类型:com.google.heart_rate.summary但没有任何关于dataSourceId应该是什么的信息。我尝试忽略它,但收到此错误:

找不到默认数据源:com.google.heart_rate.summary

有谁知道我需要使用什么 dataSourceId,或者有关于数据源的任何不错的文档的链接?

Mr *_*r L 6

对于静息心率,我使用以下方法:

"derived:com.google.heart_rate.bpm:com.google.android.gms:resting_heart_rate<-merge_heart_rate_bpm"
Run Code Online (Sandbox Code Playgroud)

对于心率或 BPM,我使用以下命令:

"derived:com.google.heart_rate.bpm:com.google.android.gms:merge_heart_rate_bpm"
Run Code Online (Sandbox Code Playgroud)

为了完整起见,我在下面列出了我用于各种阅读的数据源:

DATA_SOURCE = {
    "steps": "derived:com.google.step_count.delta:com.google.android.gms:merge_step_deltas",
    "dist": "derived:com.google.distance.delta:com.google.android.gms:from_steps<-merge_step_deltas",
    "bpm": "derived:com.google.heart_rate.bpm:com.google.android.gms:merge_heart_rate_bpm",
    "rhr": "derived:com.google.heart_rate.bpm:com.google.android.gms:resting_heart_rate<-merge_heart_rate_bpm",
    "sleep" : "derived:com.google.sleep.segment:com.google.android.gms:sleep_from_activity<-raw:com.google.activity.segment:com.heytap.wearable.health:stream_sleep",
    "cal" : "derived:com.google.calories.expended:com.google.android.gms:from_activities",
    "move": "derived:com.google.active_minutes:com.google.android.gms:from_steps<-estimated_steps",
    "points" : "derived:com.google.heart_minutes:com.google.android.gms:merge_heart_minutes",
    "weight" : "derived:com.google.weight:com.google.android.gms:merge_weight"
}
Run Code Online (Sandbox Code Playgroud)

根据数据源的不同,有时它会提供一系列点。然后,您可以选择相应地获取数组中所有点的总和、平均值、中位数等。


Bar*_*rdy 5

您可以列出可用于给定数据类型的数据源,例如:

方法

GET
Run Code Online (Sandbox Code Playgroud)

请求网址

https://www.googleapis.com/fitness/v1/users/me/dataSources?dataTypeName=com.google.heart_rate.summary
Run Code Online (Sandbox Code Playgroud)

根据您想要实现的目标,您可能会找到适合您的需求com.google.heart_rate.summarycom.google.heart_rate.bpm满足您的需求的源,包括合并源。