В настоящее время я пытаюсь найти расстояние пробег с помощью Google Fit History API.Я выполняю запрос на чтение следующим образом:
Log.v("accessGoogle Fit", "Accessing google Fit");
DataReadRequest readRequest = new DataReadRequest.Builder()
.aggregate(DataType.TYPE_DISTANCE_DELTA, DataType.AGGREGATE_DISTANCE_DELTA)
.setTimeRange(startTime, endTime, TimeUnit.MILLISECONDS)
.bucketByTime(1, TimeUnit.DAYS)
.build();
mClient = new GoogleApiClient.Builder(this)
.enableAutoManage(this, this)
.addApi(Fitness.HISTORY_API)
.addScope(Fitness.SCOPE_ACTIVITY_READ)
.build();
PendingResult<DataReadResult> pendingresult =
Fitness.HistoryApi.readData(mClient, readRequest);
pendingresult.setResultCallback(new ResultCallback<DataReadResult>() {
@Override
public void onResult(@NonNull DataReadResult dataReadResult) {
if (dataReadResult.getBuckets().size()>0)
{
for (Bucket bucket : dataReadResult.getBuckets())
{
List<DataSet> dataSets = bucket.getDataSets();
for (DataSet dataSet : dataSets)
{
processDataSet(dataSet);
}
}
}
}
});
Как вы можете видеть, типы, запрашиваемые для агрегирования в .aggregate при построении запроса, это дельта расстояния и дельта агрегированного расстояния.Это создает дельту расстояния за выбранные периоды времени, однако она не определяет, какие средства были использованы для перемещения этого расстояния - бег?Езда на велосипеде?Вождение?На автобусе?
Если возможно, могу ли я каким-то образом отфильтровать свой запрос на дельту расстояния, чтобы он включал только пробег?Доступны ли данные дельты пробега для разработчиков, использующих API Google Fit History?
Спасибо за помощь!