从ReadData函数读取数据仅返回最后一条记录

时间:2019-01-09 16:46:14

标签: java android google-fit

在使用HistoryAPI获取旧数据时遇到问题。我想要每个小时的步骤,并制作图表以使其可视化。

问题是,当我运行查询(DataReadRequest)时,结果是最后一条记录,而不是所有请求的记录。

我给你代码和数据照片。

public DataReadRequest queryFitnessData(Date startTime, Date endTime) {

    long startTimeMilli = startTime.getTime();
    long endTimeMilli = endTime.getTime();

    DataReadRequest readRequest =
            new DataReadRequest.Builder()
                    .aggregate(TYPE_STEP_COUNT_DELTA, DataType.AGGREGATE_STEP_COUNT_DELTA)
                    .bucketByTime(1, TimeUnit.HOURS)
                    .setTimeRange(startTimeMilli, endTimeMilli, TimeUnit.MILLISECONDS)
                    .build();

    return readRequest;
}

日志是这样的:

I / System.out:开始时间:2019年1月9日8:00:00结束时间:2019年1月9日9:00:00 AM步骤:0

I / System.out:开始时间:2019年1月9日9:00:00结束时间:2019年1月9日10:00:00 AM步骤:0

I / System.out:开始时间:2019年1月9日10:00:00结束时间:2019年1月9日11:00:00 AM步骤:0

I / System.out:开始时间:2019年1月9日11:00:00结束时间:2019年1月9日12:00:00 PM步骤:172

I / System.out:开始时间:2019年1月9日1:00:00 PM结束时间:2019年1月9日2:00:00 PM步骤:0

I / System.out:开始时间:2019年1月9日12:00:00结束时间:2019年1月9日1:00:00 PM步骤:0

我的数据从10:00到12:00是345步。

它应该返回类似的内容:

I / System.out:开始时间:2019年1月9日10:00:00结束时间:2019年1月9日11:00:00 AM步骤:173

I / System.out:开始时间:2019年1月9日11:00:00结束时间:2019年1月9日12:00:00 PM步骤:172

0 个答案:

没有答案