当前,我正在使用Android上的Google Fit History API来获取步骤计数。
在多个设备上开发应用程序时遇到问题,下面将对其进行总结。
设备A今天有1000步(此设备具有google fit应用程序)
设备B使用设备A的相同Google帐户登录(该设备没有google fit应用程序)。然后,我使用History API来获取步数,但它返回0步。
您能帮我找出为什么它返回0步而不是1000步的原因吗
这是我获取步骤计数的代码
Fitness.getHistoryClient(this, GoogleSignIn.getLastSignedInAccount(this))
.readDailyTotal(DataType.TYPE_STEP_COUNT_DELTA)
.addOnSuccessListener(
new OnSuccessListener<DataSet>() {
@Override
public void onSuccess(DataSet dataSet) {
long total =
dataSet.isEmpty()
? 0
: dataSet.getDataPoints().get(0).getValue(Field.FIELD_STEPS).asInt();
Log.i(TAG, "Total steps: " + total);
}
})
.addOnFailureListener(
new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.w(TAG, "There was a problem getting the step count.", e);
}
});