Google 피트니스 API를 사용하고 있습니다. HistoryApi를 사용하여 구체적으로 작성하십시오.fitness api를 사용하여 거리를 얻으려면 어떻게해야합니까?
단계, 칼로리 및 거리를 얻기 위해 Fitness.HistoryApi.readDailyTotal을 사용하고 있습니다. 그걸 통해 단계와 칼로리를 얻었지만 거리가 문제를 만들고 있습니다. 하지만 onResult는 호출되지 않습니다. 어떤 도움을 주시면 감사하겠습니다. 코드 if (dailyTotalResult.getStatus().isSuccess()) {
이상에서
PendingResult<DailyTotalResult> distanceResult = Fitness.HistoryApi
.readDailyTotal(mClient, DataType.TYPE_DISTANCE_DELTA);
distanceResult.setResultCallback(new ResultCallback<DailyTotalResult>() {
@Override
public void onResult(DailyTotalResult dailyTotalResult) {
if (dailyTotalResult.getStatus().isSuccess()) {
DataSet totalSet = dailyTotalResult.getTotal();
long distance = totalSet.isEmpty()? 0: totalSet.getDataPoints().get(0).getValue(Field.FIELD_DISTANCE).asInt();
Log.i("-------------", "distance= " + distance);
}
}
});
이 거리의 경우 거짓 내가 단계와 칼로리를 얻으려고하는 동안은 true를 반환합니다.
위의 코드는 모두 백그라운드 스레드에서 실행됩니다.
동일한 문제에 직면 한 사람이 있으면 알려 주시기 바랍니다. – Smeet