rest - 用于 Google Fit REST 心率查询的数据源 ID 是什么?
问题描述
我正在尝试使用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
}
我找不到任何读取心率的例子,所以我试图修改这个心率。我找到了这个数据类型列表,它具有这种数据类型:com.google.heart_rate.summary
但没有任何关于dataSourceId
应该是什么的信息。我试着忽略它,但我得到了这个错误:
找不到默认数据源:com.google.heart_rate.summary
有人知道我需要为 dataSourceId 使用什么,或者有任何关于数据源的体面文档的链接吗?
解决方案
对于静息心率,我使用这个:
"derived:com.google.heart_rate.bpm:com.google.android.gms:resting_heart_rate<-merge_heart_rate_bpm"
对于心率或 BPM,我使用这个:
"derived:com.google.heart_rate.bpm:com.google.android.gms:merge_heart_rate_bpm"
为了完整起见,我在下面包含了用于各种阅读的数据源:
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"
}
根据数据源,有时它会提供一个点数组。然后,您可以选择相应地获取数组中所有点的总和、平均值、中位数等。
推荐阅读
- git - 将 git lfs ls-files 与 git ls-files ':(attr:filter=lfs)' 进行比较是检测非 lfs 管理的 lfs 文件的可靠方法吗?
- karma-jasmine - 如何使用 ActiveRoute.snapshot.data 和路由器测试 Angular 7 组件?
- php - 如何将最后一个数组值更改为第三个位置?
- spring-boot - 春季启动网络问题
- azure - 从密钥保管库将证书上传到应用服务
- c# - 如果不使用 waitEvent.waitOne(5000),HTML 部分不会在 WPF BrowserView 中呈现
- javascript - 2D Tilebased 游戏中的 Canvas 碰撞检测不准确
- java - java.lang.VerifyError:堆栈映射与异常处理程序中的不匹配
- python - 单元测试——测试一个类的方法
- php - 为什么这个 php 代码不会产生任何错误?