gpt4 book ai didi

android - 从 Google fit API 获取 sleep 数据

转载 作者:行者123 更新时间:2023-11-29 02:25:52 27 4
gpt4 key购买 nike

过去几天我一直在尝试从 google fit API 获取 sleep 信息。

我已经设法从历史 API 和 session API 获取了该时间段的数据,但 Activity 列表似乎不包含任何 sleep 数据。

我一直在“像 Android 一样 sleep ”中捕获数据,我也尝试过“即时”。但是在返回的数据集中看不到任何内容。

我似乎记得使用较旧的 Fit 应用程序时,我会看到显示的 sleep Activity ,但在新应用程序的日志部分中没有数据的迹象。

我应该能够从历史数据或 session 数据中获取数据吗?

目前我正在使用

DataReadRequest readRequest = new DataReadRequest.Builder()
.setTimeRange(startTime, endTime, TimeUnit.MILLISECONDS)
.read(DataType.TYPE_ACTIVITY_SEGMENT)
.build();

Fitness.getHistoryClient(this, GoogleSignIn.getLastSignedInAccount(context))
.readData(readRequest)
.addOnSuccessListener(new OnSuccessListener<DataReadResponse>(){
@Override
public void onSuccess(DataReadResponse dataReadResponse) {
List<DataSet> dataSets = dataReadResponse.getDataSets();
for (DataSet dataSet : dataSets) {
for (DataPoint dp : dataSet.getDataPoints()) {
for (Field field : dp.getDataType().getFields()){
LogUtil.d("google fit Start: " + dateFormat.format(dp.getStartTime(TimeUnit.MILLISECONDS)) + " " + timeFormat.format(dp.getStartTime(TimeUnit.MILLISECONDS)) + " End: " + dateFormat.format(dp.getEndTime(TimeUnit.MILLISECONDS)) + " " + timeFormat.format(dp.getEndTime(TimeUnit.MILLISECONDS)) + " type: " + showDataType(dp.getValue(field)));
}
}
}
}
}

我不确定我缺少什么才能获得正确的数据。我看到走路、静止、运行等,但就是睡不着!

最佳答案

您可以尝试发送一个 session 请求,该请求将读取 dataType.TYPE_ACTIVITY_SEGMENT 或使用 Users.sessions 方法来正确地 record fitness data sleep activities .

Activity 列表:

  • sleep 72
  • 轻度 sleep 109
  • 深度 sleep 110
  • REM sleep 111

这是 sample来自 Martin Stava 的代码将向您展示如何将 Sleep 用作来自 Google Fit 的 Anroid 数据。希望对您有所帮助。

关于android - 从 Google fit API 获取 sleep 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52261321/

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