引起:java.lang.IllegalStateException:必须在请求聚合时指定有效的bucketing策略

nav*_*jan 5 java android google-fit

我在创建读取请求对象DataReadRequest类时遇到此错误.

java.lang.IllegalStateException:必须在请求聚合时指定有效的bucketing策略

我确实提到了上面的问题,但它对我没有帮助,因为我没有使用上面的代码.

我看到这个崩溃的代码如下:

private void accessGoogleFit() {
        Calendar cal = Calendar.getInstance();
        cal.setTime(new Date());
        long endTime = cal.getTimeInMillis();
        cal.add(Calendar.YEAR, -1);
        long startTime = cal.getTimeInMillis();

        DataReadRequest readRequest = new DataReadRequest.Builder()
                .aggregate(DataType.TYPE_STEP_COUNT_DELTA, DataType.AGGREGATE_STEP_COUNT_DELTA)
                .setTimeRange(startTime, endTime, TimeUnit.MILLISECONDS)
                .build();
Run Code Online (Sandbox Code Playgroud)

我还提到了" https://plus.google.com/105817403737304061447/posts/5Bo6qMYRAM9 ",但它也没有帮助.

以上代码直接来自" https://developers.google.com/fit/android/get-started ".

提前致谢.

Cow*_*rnz 6

如前所述,该bucketByTime方法(.bucketByTime(1, TimeUnit.DAYS按照我想象的那样使用,您希望跟踪一天中的步数)根据您要求的时间段汇总数据,因此必须指定此分段策略以避免抛出IllegalStateException.