如何使用Google Fit History API查找距离* ran *?

时间:2019-02-10 04:59:00

标签: android google-api google-fit google-fit-sdk

我目前正在尝试使用Google健身历史记录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中请求进行聚合的类型为距离增量和聚合距离增量。这会在选定的时间段内产生距离增量,但是未指定移动该距离所用的方式-跑步?骑自行车?开车吗在公交车上?

如果可能,我可以以某种方式过滤对距离增量的请求,使其仅包括行驶距离吗?使用Google Fit History API的开发者是否无法获得行驶距离增量的数据?

谢谢您的帮助!

0 个答案:

没有答案