【发布时间】:2016-07-20 01:38:19
【问题描述】:
我在我的应用程序中使用 Google 健康包。我知道 Health kit 不直接提供传感器步数。我阅读了 google fit 文档,我发现我们可以在后台使用 Recording api 进行步数。因此,如果可以使用 Recording api 和 Sensor api 在后台获取步数,请告诉我如何实现这一点。我想在后台感知用户活动以及用户在该活动期间采取了多少步。任何帮助将不胜感激。
根据 google fit 文档,如果我的应用程序订阅记录数据类型,那么即使我的应用程序没有运行,它也会记录该类型的数据并将其存储到 HISTORYAPI 中。这是订阅代码
Fitness.RecordingApi.subscribe(fitnessClient, DataType.TYPE_ACTIVITY_SAMPLE)
.setResultCallback(new ResultCallback<Status>() {
@Override
public void onResult(Status status) {
if (status.isSuccess()) {
if (status.getStatusCode()
== FitnessStatusCodes.SUCCESS_ALREADY_SUBSCRIBED) {
Log.e(TAG, "Existing subscription for activity detected.");
} else {
Log.e(TAG, "Successfully subscribed activity !");
}
} else {
Log.e(TAG, "There was a problem subscribing.");
}
}
});
Fitness.RecordingApi.subscribe(fitnessClient,DataType.TYPE_STEP_COUNT_DELTA).
setResultCallback(new ResultCallback<Status>() {
@Override
public void onResult(Status arg0) {
if(arg0.isSuccess()){
Log.e("Steps Recording","Subcribe");
}
}
});
现在我已经订阅了步骤和活动。但直到现在它什么都没有感应到。谁能解释订阅记录数据类型的目的是什么。
【问题讨论】:
标签: android google-fit