如何解决每小时间隔的 GoogleFit 未知活动 ID
使用 Google 健身 (com.google.android.gms:play-services-fitness:20.0.0
),我们试图每隔一小时减少一次活动,但是当我们有跨小时的活动时,前几个小时的 activityId
参数为 4 (未知)。
例如,假设从 10:40 到 11:30 进行 50 分钟的跑步(活动),我们会询问 Google 健身每小时的间隔,具体来说:
-
我们预计在 10:00 到 11:00 之间运行 20 分钟,但结果不是 20 分钟,而是整个 60 分钟的未知活动(涵盖从 10:00 开始的所有分钟)到 11:00),返回给我们的结果是
activityId
4; -
在 11:00 到 12:00 之间,我们预计会有 30 分钟的跑步时间,在这种情况下它们会正确到达;
如果我们尝试使用更大的范围,包括所有正在进行的活动(例如从 10:00 到 12:00),答案是正确的,我们按预期运行了 50 分钟。
我们正在使用这种聚合:
.aggregate(DataType.TYPE_ACTIVITY_SEGMENT)
.aggregate(DataType.TYPE_CALORIES_EXPENDED)
.aggregate(DataType.TYPE_disTANCE_DELTA)
.aggregate(DATASOURCE_ESTIMATED_STEP_COUNT_DELTA)
1 分钟的bucketByActivitySegment
。
这是我们用来从 Google Fit 读取数据的 API:https://developers.google.com/android/reference/com/google/android/gms/fitness/HistoryClient
有什么想法吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。