如何通过 Fitness REST API 从 google 健身商店获取每日步数和活动卡路里
How to get daily step count and active calories from google fitness store via Fitness REST API
我正在使用 nodejs 和 Google 的官方 "googleapis" 模块。我无法从任何数据源获取任何值字段。
var count = 0;
async.eachSeries(dataSources, function (source, nextSource) {
count++;
console.log(count, source.dataStreamId);
console.log('------------------------------------------------------------------------------------------------------------------------------');
fitness.users.dataSources.datasets.get({
dataSourceId: encodeURI(source.dataStreamId),
datasetId: new Date('2016-01-01').getTime() + '-' + new Date().getTime(),
userId: "me"
}, function (err, data) {
if (err) {
console.log(err);
return nextSource(err);
}
console.log("Data Set");
console.log(data);
nextSource(null);
});
}, function nextSource(err) {
if (err) {
return nextTask(err);
}
nextTask(null, 'OK')
});
我得到的回复是这样的:
{ minStartTimeNs: '1451606400000',
maxEndTimeNs: '1455532058239',
dataSourceId:
'derived:com.google.step_count.delta:com.google.android.gms:estimated_steps'
}
我遇到了同样的问题,但找到了解决方案。
"minStartTimeNs: '1451606400000', maxEndTimeNs: '1455532058239'"
它们的格式不正确,api 需要 NANOSECOND 的纪元时间(19 个数字),因此需要 1451606400000000000 和 1455532058239000000
我正在使用 nodejs 和 Google 的官方 "googleapis" 模块。我无法从任何数据源获取任何值字段。
var count = 0;
async.eachSeries(dataSources, function (source, nextSource) {
count++;
console.log(count, source.dataStreamId);
console.log('------------------------------------------------------------------------------------------------------------------------------');
fitness.users.dataSources.datasets.get({
dataSourceId: encodeURI(source.dataStreamId),
datasetId: new Date('2016-01-01').getTime() + '-' + new Date().getTime(),
userId: "me"
}, function (err, data) {
if (err) {
console.log(err);
return nextSource(err);
}
console.log("Data Set");
console.log(data);
nextSource(null);
});
}, function nextSource(err) {
if (err) {
return nextTask(err);
}
nextTask(null, 'OK')
});
我得到的回复是这样的:
{ minStartTimeNs: '1451606400000',
maxEndTimeNs: '1455532058239',
dataSourceId:
'derived:com.google.step_count.delta:com.google.android.gms:estimated_steps'
}
我遇到了同样的问题,但找到了解决方案。
"minStartTimeNs: '1451606400000', maxEndTimeNs: '1455532058239'"
它们的格式不正确,api 需要 NANOSECOND 的纪元时间(19 个数字),因此需要 1451606400000000000 和 1455532058239000000