如何从 Google Fit 读取血糖数据?
How to read Blood glucose data from Google Fit?
我正在尝试从 google fit 帐户获取血糖,如果用户在他们的帐户中记录或同步了任何血糖数据。
API,
https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate
正文
{
"aggregateBy": [{
"dataTypeName": "com.google.blood_glucose",
"dataSourceId": "derived:com.google.blood_glucose:com.google.android.gms:merged"
}],
"bucketByTime": { "durationMillis": 86400000 },
"startTimeMillis": 1578718800000, // jan 11 2010
"endTimeMillis": 1580360400000 // jan 30 2020
}
我收到了:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "forbidden",
"message": "datasource not found or not readable: derived:com.google.blood_glucose:com.google.android.gms:delta"
}
],
"code": 403,
"message": "datasource not found or not readable: derived:com.google.blood_glucose:com.google.android.gms:delta"
}
}
如果用户在他们的 google 健身帐户中同步或记录了任何内容,关于如何读取血糖数据的任何建议?
您不需要同时指定数据类型名称和数据源 ID。事实上,如果您同时指定两者,数据类型名称(当前)将被忽略。
如果指定数据源ID,则该数据源必须存在;如果指定数据类型名称,则使用该类型的 "default" 数据源;但允许不存在(例如,如果用户从未实际写入血糖数据)。
因此,将您的请求更改为:
{
"aggregateBy": [{
"dataTypeName": "com.google.blood_glucose",
}],
"bucketByTime": { "durationMillis": 86400000 },
"startTimeMillis": 1578718800000,
"endTimeMillis": 1580360400000
}
我正在尝试从 google fit 帐户获取血糖,如果用户在他们的帐户中记录或同步了任何血糖数据。
API,
https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate
正文
{
"aggregateBy": [{
"dataTypeName": "com.google.blood_glucose",
"dataSourceId": "derived:com.google.blood_glucose:com.google.android.gms:merged"
}],
"bucketByTime": { "durationMillis": 86400000 },
"startTimeMillis": 1578718800000, // jan 11 2010
"endTimeMillis": 1580360400000 // jan 30 2020
}
我收到了:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "forbidden",
"message": "datasource not found or not readable: derived:com.google.blood_glucose:com.google.android.gms:delta"
}
],
"code": 403,
"message": "datasource not found or not readable: derived:com.google.blood_glucose:com.google.android.gms:delta"
}
}
如果用户在他们的 google 健身帐户中同步或记录了任何内容,关于如何读取血糖数据的任何建议?
您不需要同时指定数据类型名称和数据源 ID。事实上,如果您同时指定两者,数据类型名称(当前)将被忽略。
如果指定数据源ID,则该数据源必须存在;如果指定数据类型名称,则使用该类型的 "default" 数据源;但允许不存在(例如,如果用户从未实际写入血糖数据)。
因此,将您的请求更改为:
{
"aggregateBy": [{
"dataTypeName": "com.google.blood_glucose",
}],
"bucketByTime": { "durationMillis": 86400000 },
"startTimeMillis": 1578718800000,
"endTimeMillis": 1580360400000
}