gpt4 book ai didi

java - Google Fit 查询手动启动的 Activity

转载 作者:太空宇宙 更新时间:2023-11-04 10:14:13 25 4
gpt4 key购买 nike

我正在尝试查询由用户进入 google fit 按 + -> 启动 Activity -> 启动启动的 google fit Activity ,与通常被动跟踪的 Activity 相反,我最初认为这就是 session api 的用途,但我认为这可能是为了其他目的。

private SessionReadRequest querySessionData() {
// Set a start and end time for our query, using a start time of 4 week before this moment.
Calendar cal = Calendar.getInstance();
Date now = new Date();
cal.setTime(now);
long endTime = cal.getTimeInMillis();
cal.add(Calendar.WEEK_OF_YEAR, -4);
long startTime = cal.getTimeInMillis();

// Build a session read request
return new SessionReadRequest.Builder()
.setTimeInterval(startTime, endTime, TimeUnit.MILLISECONDS)
.read(DataType.TYPE_SPEED)
//.setSessionName()
.build();
}

当时我希望获取历史 Activity 数据,但当我没有从查询中得到结果时,我认为我使用了错误的 API。

最佳答案

好吧,最终我发现我可以使用历史 API 实现我想要的目标,关键是按 session 存储桶,所以首先创建如下请求:

private DataReadRequest querySessionData() {
Calendar cal = Calendar.getInstance();
Date now = new Date();
cal.setTime(now);
long endTime = cal.getTimeInMillis();
//query 30 days in the past
cal.add(Calendar.DAY_OF_MONTH, - 30);
long startTime = cal.getTimeInMillis();


return new DataReadRequest.Builder()
.aggregate(DataType.TYPE_ACTIVITY_SEGMENT, DataType.AGGREGATE_ACTIVITY_SUMMARY)
.aggregate(DataType.TYPE_DISTANCE_DELTA, DataType.AGGREGATE_DISTANCE_DELTA)
.aggregate(DataType.TYPE_CALORIES_EXPENDED, DataType.AGGREGATE_CALORIES_EXPENDED)
.aggregate(DataType.TYPE_SPEED, DataType.AGGREGATE_SPEED_SUMMARY)
.aggregate(DataType.TYPE_HEART_RATE_BPM, DataType.AGGREGATE_HEART_RATE_SUMMARY)

.bucketBySession(1, TimeUnit.MINUTES)
.setTimeRange(startTime, endTime, TimeUnit.MILLISECONDS)
.build();
}

然后要使用该请求,请使用历史 API,如下所示:

final DataReadRequest readRequest = querySessionData();
Fitness.HistoryApi.readData(mClient, readRequest).setResultCallback(new ResultCallback<DataReadResult>() {
@Override
public void onResult(@NonNull DataReadResult dataReadResult) {
//do your stuff!!
}
});
}

关于java - Google Fit 查询手动启动的 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51916620/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com