集成Google Health Connect到Android健身应用后,如何识别手动记录的步数与睡眠数据?
Google Health Connect 能否读取手动记录的步数与睡眠数据?
当然可以——你完全能通过Google Health Connect读取用户手动录入的步数和睡眠数据,不管这些数据是直接在Health Connect App里添加的,还是从关联穿戴设备的配套App手动记录的。
具体实现要点:
- 先确保你的App拿到对应数据类型的读取权限:步数对应
HealthPermissions.READ_STEPS,睡眠对应HealthPermissions.READ_SLEEP_SESSIONS(如果需要睡眠阶段数据,还要加HealthPermissions.READ_SLEEP_STAGES)。 - 用Health Connect的
RecordsClient查询数据就行,不需要区分自动采集还是手动录入——Health Connect会把所有符合条件的数据统一返回给你。 - 步数数据用
StepsRecord构建查询请求,睡眠数据用SleepSessionRecord或SleepStageRecord,调用readRecords方法就能拿到包含手动记录在内的所有数据。
额外细节:
- 手动记录的数据在Health Connect里会被标记为
userInput类型,你可以通过Record.metadata.dataOrigin.type判断来源:DataOrigin.Type.USER_INPUT就是手动录入的数据,剩下的是设备自动采集的。 - 写查询逻辑时注意覆盖完整的时间范围,别漏了用户手动添加的历史数据。
内容的提问来源于stack exchange,提问作者Ankur Goyal
相关产品推荐
相关产品推荐

