Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/208.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java GoogleFit:Agregate数据随着每次查询而增长_Java_Android_Google Fit - Fatal编程技术网

Java GoogleFit:Agregate数据随着每次查询而增长

Java GoogleFit:Agregate数据随着每次查询而增长,java,android,google-fit,Java,Android,Google Fit,这件事让我心神不定。我正在使用来自GoogleFit网站和文档的示例代码。我从一个样本中做出的主要更正是,我创建了一个月的时间跨度,而不是一周 DataReadRequest readRequest = new DataReadRequest.Builder() .aggregate(DataType.TYPE_STEP_COUNT_DELTA, DataType.AGGREGATE_STEP_COUNT_DELTA) .bucketByT

这件事让我心神不定。我正在使用来自GoogleFit网站和文档的示例代码。我从一个样本中做出的主要更正是,我创建了一个月的时间跨度,而不是一周

    DataReadRequest readRequest = new DataReadRequest.Builder()
            .aggregate(DataType.TYPE_STEP_COUNT_DELTA, DataType.AGGREGATE_STEP_COUNT_DELTA)
            .bucketByTime(1, TimeUnit.DAYS)
            .setTimeRange(startTime, endTime, TimeUnit.MILLISECONDS)
            .build();

    Fitness.HistoryApi.readData(this.getGoogleClient(), readRequest)
            .setResultCallback(new ResultCallback<DataReadResult>() {
                @Override
                public void onResult(DataReadResult result) {
                    if (listener != null) {
                        RangedStepsReport report = null;
                        if (result.getStatus().isSuccess()) {
                            Log.d(TAG, "Google Fit: Report obtained");
                            java.text.DateFormat dateFormat = SimpleDateFormat.getDateInstance(SimpleDateFormat.SHORT);
                            report = new RangedStepsReport(startTime, endTime);
                            //
                            for (Bucket b : result.getBuckets()) {
                                Log.i(TAG, "Bucket: " + b.getBucketType());
                                Log.i(TAG, "Activity: " + b.getActivity());
                                Log.i(TAG, "StartDate: " + dateFormat.format(b.getStartTime(TimeUnit.MILLISECONDS)));
                                Log.i(TAG, "EndDate: " + dateFormat.format(b.getEndTime(TimeUnit.MILLISECONDS)));
                                Log.i(TAG, "Activity: " + b.getSession());
                                for (DataSet ds : b.getDataSets()) {
                                    Log.i(TAG, "\tData set:" + ds.getDataType());
                                    Log.i(TAG, "\tSource:" + ds.getDataSource());

                                    for (DataPoint dp : ds.getDataPoints()) {
                                        Log.i(TAG, "\tData point:");
                                        Log.i(TAG, "\t\tType: " + dp.getDataType().getName());
                                        Log.i(TAG, "\t\tStart: " + dateFormat.format(dp.getStartTime(TimeUnit.MILLISECONDS)));
                                        Log.i(TAG, "\t\tEnd: " + dateFormat.format(dp.getEndTime(TimeUnit.MILLISECONDS)));
                                        for (Field field : dp.getDataType().getFields()) {
                                            Log.i(TAG, "\t\t\tField: " + field.getName() + " Value: " + dp.getValue(field));
                                        }
                                    }
                                }

                            }

                            //
                        } else {
                            Log.d(TAG, "Google Fit: Report NOT obtained!");
                        }
                    }
                }
            });
DataReadRequest=newdatareadrequest.Builder()
.aggregate(DataType.TYPE\u STEP\u COUNT\u DELTA,DataType.aggregate\u STEP\u COUNT\u DELTA)
.bucketByTime(1,时间单位:天)
.setTimeRange(开始时间、结束时间、时间单位.毫秒)
.build();
Fitness.HistoryApi.readData(this.getGoogleClient(),readRequest)
.setResultCallback(新的ResultCallback(){
@凌驾
public void onResult(DataReadResult结果){
if(侦听器!=null){
RangedSepsReport报告=null;
if(result.getStatus().issucess()){
Log.d(标签“GoogleFit:Report Acquired”);
java.text.DateFormat DateFormat=SimpleDataFormat.getDateInstance(SimpleDataFormat.SHORT);
报告=新的RangedSepsReport(开始时间、结束时间);
//
for(Bucket b:result.getbucket()){
Log.i(标记,“Bucket:+b.getBucketType());
Log.i(标记“Activity:+b.getActivity());
Log.i(标记“StartDate:+dateFormat.format(b.getStartTime(TimeUnit.millides)));
Log.i(标记“EndDate:+dateFormat.format(b.getEndTime(TimeUnit.millides)));
Log.i(标记“Activity:+b.getSession());
对于(数据集ds:b.getDataSets()){
Log.i(标记“\t数据集:”+ds.getDataType());
Log.i(标记“\tSource:+ds.getDataSource());
对于(数据点dp:ds.getDataPoints()){
Log.i(标记“\t数据点”);
Log.i(标记“\t\t类型:”+dp.getDataType().getName());
Log.i(标记“\t\tStart:”+dateFormat.format(dp.getStartTime(TimeUnit.ms));
Log.i(标记“\t\tEnd:”+dateFormat.format(dp.getEndTime(TimeUnit.millides)));
for(字段:dp.getDataType().getFields()){
Log.i(标记“\t\t\t字段:”+field.getName()+“值:”+dp.getValue(字段));
}
}
}
}
//
}否则{
Log.d(标签“GoogleFit:未获得报告!”);
}
}
}
});
这应该是从GoogleFit获取步骤列表的最佳方式,不管设备有多少步进传感器

然后,对于我在同一天进行的不同查询(执行完全相同的代码),我在同一天得到不同的值

/I/GoogleFitUtil:Bucket:1
/I/GoogleFitUtil:活动:车内
/I/GoogleFitUtil:StartDate:3/5/16
/I/GoogleFitUtil:EndDate:4/5/16
/I/GoogleFitUtil:Activity:null
/I/GoogleFitUtil:Data set:DataType{com.google.step_count.delta[steps(I)]}
/I/GoogleFitUtil:Source:DataSource{derived:Application{com.google.android.gms::null}:aggregated:DataType{com.google.step_count.delta[steps(I)]}
/I/GoogleFitUtil:数据点:
/I/GoogleFitUtil:Type:com.google.step_count.delta
/I/GoogleFitUtil:Start:3/5/16
/I/GoogleFitUtil:End:4/5/16
/I/GoogleFitUtil:字段:步长值:6097
/I/GoogleFitUtil:Bucket:1
/I/GoogleFitUtil:活动:车内
/I/GoogleFitUtil:StartDate:4/5/16
/I/GoogleFitUtil:EndDate:5/5/16
/I/GoogleFitUtil:Activity:null
/I/GoogleFitUtil:Data set:DataType{com.google.step_count.delta[steps(I)]}
/I/GoogleFitUtil:Source:DataSource{derived:Application{com.google.android.gms::null}:aggregated:DataType{com.google.step_count.delta[steps(I)]}
/I/GoogleFitUtil:数据点:
/I/GoogleFitUtil:Type:com.google.step_count.delta
/I/GoogleFitUtil:Start:4/5/16
/I/GoogleFitUtil:End:5/5/16
/I/GoogleFitUtil:字段:步长值:22162
然后是相同的查询

/<pack.....> I/GoogleFitUtil: Bucket: 1
/<pack.....> I/GoogleFitUtil: Activity: in_vehicle
/<pack.....> I/GoogleFitUtil: StartDate: 3/5/16
/<pack.....> I/GoogleFitUtil: EndDate: 4/5/16
/<pack.....> I/GoogleFitUtil: Activity: null
/<pack.....> I/GoogleFitUtil:   Data set:DataType{com.google.step_count.delta[steps(i)]}
/<pack.....> I/GoogleFitUtil:   Source:DataSource{derived:Application{com.google.android.gms::null}:aggregated:DataType{com.google.step_count.delta[steps(i)]}}
/<pack.....> I/GoogleFitUtil:   Data point:
/<pack.....> I/GoogleFitUtil:       Type: com.google.step_count.delta
/<pack.....> I/GoogleFitUtil:       Start: 3/5/16
/<pack.....> I/GoogleFitUtil:       End: 4/5/16
/<pack.....> I/GoogleFitUtil:           Field: steps Value: 5994
/<pack.....> I/GoogleFitUtil: Bucket: 1
/<pack.....> I/GoogleFitUtil: Activity: in_vehicle
/<pack.....> I/GoogleFitUtil: StartDate: 4/5/16
/<pack.....> I/GoogleFitUtil: EndDate: 5/5/16
/<pack.....> I/GoogleFitUtil: Activity: null
/<pack.....> I/GoogleFitUtil:   Data set:DataType{com.google.step_count.delta[steps(i)]}
/<pack.....> I/GoogleFitUtil:   Source:DataSource{derived:Application{com.google.android.gms::null}:aggregated:DataType{com.google.step_count.delta[steps(i)]}}
/<pack.....> I/GoogleFitUtil:   Data point:
/<pack.....> I/GoogleFitUtil:       Type: com.google.step_count.delta
/<pack.....> I/GoogleFitUtil:       Start: 4/5/16
/<pack.....> I/GoogleFitUtil:       End: 5/5/16
/<pack.....> I/GoogleFitUtil:           Field: steps Value: 22181
/I/GoogleFitUtil:Bucket:1
/I/GoogleFitUtil:活动:车内
/I/GoogleFitUtil:StartDate:3/5/16
/I/GoogleFitUtil:EndDate:4/5/16
/I/GoogleFitUtil:Activity:null
/I/GoogleFitUtil:Data set:DataType{com.google.step_count.delta[steps(I)]}
/I/GoogleFitUtil:Source:DataSource{derived:Application{com.google.android.gms::null}:aggregated:DataType{com.google.step_count.delta[steps(I)]}
/I/GoogleFitUtil:数据点:
/I/GoogleFitUtil:Type:com.google.step_count.delta
/I/GoogleFitUtil:Start:3/5/16
/I/GoogleFitUtil:End:4/5/16
/I/GoogleFitUtil:字段:步长值:5994
/I/GoogleFitUtil:Bucket:1
/I/GoogleFitUtil:活动:车内
/I/GoogleFitUtil:StartDate:4/5/16
/I/GoogleFitUtil:EndDate:5/5/16
/I/GoogleFitUtil:Activity:null
/I/GoogleFitUtil:Data set:DataType{com.google.step_count.delta[steps(I)]}
/I/GoogleFitUtil:Source:DataSource{derived:Application{com.google.android.gms::null}:aggregated:DataType{com.google.step_count.delta[steps(I)]}
/I/GoogleFitUtil:数据点:
/I/GoogleFitUtil:Type:com.google.step_count.delta
/I/GoogleFitUtil:Start:4/5/16
/I/GoogleFitUtil:End:5/5/16
/I/GoogleFitUtil:字段:步长值:22181
注意,有一天田地倾向于上升,另一天田地倾向于下降。这和ti有关系吗
/<pack.....> I/GoogleFitUtil: Bucket: 1
/<pack.....> I/GoogleFitUtil: Activity: in_vehicle
/<pack.....> I/GoogleFitUtil: StartDate: 3/5/16
/<pack.....> I/GoogleFitUtil: EndDate: 4/5/16
/<pack.....> I/GoogleFitUtil: Activity: null
/<pack.....> I/GoogleFitUtil:   Data set:DataType{com.google.step_count.delta[steps(i)]}
/<pack.....> I/GoogleFitUtil:   Source:DataSource{derived:Application{com.google.android.gms::null}:aggregated:DataType{com.google.step_count.delta[steps(i)]}}
/<pack.....> I/GoogleFitUtil:   Data point:
/<pack.....> I/GoogleFitUtil:       Type: com.google.step_count.delta
/<pack.....> I/GoogleFitUtil:       Start: 3/5/16
/<pack.....> I/GoogleFitUtil:       End: 4/5/16
/<pack.....> I/GoogleFitUtil:           Field: steps Value: 5994
/<pack.....> I/GoogleFitUtil: Bucket: 1
/<pack.....> I/GoogleFitUtil: Activity: in_vehicle
/<pack.....> I/GoogleFitUtil: StartDate: 4/5/16
/<pack.....> I/GoogleFitUtil: EndDate: 5/5/16
/<pack.....> I/GoogleFitUtil: Activity: null
/<pack.....> I/GoogleFitUtil:   Data set:DataType{com.google.step_count.delta[steps(i)]}
/<pack.....> I/GoogleFitUtil:   Source:DataSource{derived:Application{com.google.android.gms::null}:aggregated:DataType{com.google.step_count.delta[steps(i)]}}
/<pack.....> I/GoogleFitUtil:   Data point:
/<pack.....> I/GoogleFitUtil:       Type: com.google.step_count.delta
/<pack.....> I/GoogleFitUtil:       Start: 4/5/16
/<pack.....> I/GoogleFitUtil:       End: 5/5/16
/<pack.....> I/GoogleFitUtil:           Field: steps Value: 22181