【FAQ】关于获取运动健康数据的常见问题及解答
目录
一、Health Kit健康数据采样, 原子采样数据问题
二、Health Kit查询历史数据查询数据和返回数据不一致
三、Health Kit关于获取历史数据问题
四、调用Health Kit接口出现获取不到数据的情况
问题解答
Q1:Health Kit健康数据采样, 原子采样数据问题
【问题描述】
1.体脂数据中的肌肉量和水份量是如何获得的,是用户自己上传体脂数据中的体重、体脂,然后系统通过计算公式得到数据吗?
2.日常活动统计数据包含什么内容,如何获取这些数据?
锻炼记录概要数据包含什么内容,是统计数据吗?获取方式是什么?
心脏健康数据测的是心电图相关记录。这些数据传到回调地址是什么数据格式?
【解决方案】
1、Health Kit是基于用户授权的前提下,将运动健康App中的数据进行开放,相关数据是由运动健康App提供的。
体脂数据是通过算法得到的, Health Kit仅会将有的数据进行返回。

体脂返回的有关数据可以查看“体重”指南。

2、日常活动统计数据包含步数、活动热量、锻炼时长、活动小时数的目标与日统计值,可以查看“日常活动统计”指南中的数据开放说明进行获取,返回的参数在指南中也有描述。

3、包含的相关数据可以点击此处的图标进行查看,在“数据开放总览”中也有相关描述。


锻炼记录属于运动记录,获取方式以跑步为例,可以查看跑步指南中的场景示例。4、订阅功能,是数据有更新时会向您发送一个通知,通知内容并不包含具体的数据,仅会告知您用户的某个数据在某个时间点发生了什么。您在接收到通知后,需要根据推送过来的消息通知,向Health Kit服务端拉取数据。
比如,在接收到心电图①的通知后,根据通知中返回的信息,调用②的接口,拉取具体的数据。点击查看ECG心电测量记录。

Q2:Health Kit查询历史数据查询数据和返回数据不一致
【问题描述】
通过https://health-api.cloud.huawei.com/healthkit/v1/activityRecords?startTime=&endTime=查询一个月运动记录,只能查询到最早5月26的数据,但是华为健康App里的数据最早为5月8日,为何查询不到?
【解决方案】
1、需要检查是否申请了历史数据权限,查询数据时,出于对用户的数据保护,只允许开发者查询用户授权之后的数据。例如用户是在2022年2月14日授权,那么2022年2月14日之前的数据将不可查询。


另外要申请历史数据相关权限。申请的测试权限一般会有半年有效期,若因到期被平台关闭,请重新申请相关权限。

2、如果运动记录为手动创建,请在查询时携带sourceType参数,接口详情请查看“查询已创建的运动记录”。

Q3:Health Kit关于获取历史数据问题
【问题描述1】
应用已经开通了历史数据访问权限,同时用户在授权页面已经勾选了”历史数据“项,调用healthkit的rest接口查询健康数据,那么用户授权之前一年的健康数据是否都能被查询到呢?
【解决方案】
当用户授予应用“读取历史数据”(一周、一月、一年)权限时,开发者可查询的用户数据时间范围从用户授权时间向前推移对应的时间。如果用户已授权一年的权限,则可以查询用户授权时间前一年内的健康数据。

【问题描述2】
获取一周中的每天步数总数,需要申请哪些权限?
【解决方案】
需要申请历史数据权限,使用历史数据权限,需要在认证鉴权时的scope参数中添加历史数据权限,供用户选择授权。
REST API 周的历史数据权限:https://www.huawei.com/healthkit/historydata.open.week
Android 周的历史数据权限:Scopes.HEALTHKIT_HISTORYDATA_OPEN_WEEK

点击查看REST接口认证鉴权、点击查看Android认证鉴权、点击查看读取历史数据操作:REST、Android。

Q4:调用Health Kit接口出现获取不到数据的情况
【问题描述1】
已经在华为健康App中绑定设备,并确认有步数等信息且同步到了云端,但通过开发者接口无法获取。
【解决方案】
请确认Health Kit登录的账号和运动健康App中有数据的账号是同一个,并检查在运动健康App 隐私管理中是否关联了华为运动健康服务,如果未关联,无法获取数据。
如何判断用户是否关联了华为运动健康服务?
方式一:在运动健康App 隐私管理中,检查是否已开启标记②中的华为运动健康服务。

方式二:隐私接口请求时,在Headers中会返回x-health-app-privacy,需确保返回的值为1,1表示用户在运动健康App中已授权。


方式三:调用隐私授权状态查询接口进行判断。

如果未关联华为运动健康服务,开发者可以怎么做?
1、可以提示用户在运动健康App中开启华为运动健康服务开关:

2、可以根据华为运动健康App开放授权指南通过Health Kit云侧提供的H5页面关联华为运动健康服务。
【问题描述2】
查询隐私接口的时候,返回的状态为3。这是由于什么原因引起的?该怎么处理?
【解决方案】
1、3表示非华为运动健康App用户(不能授权),意思是用户没有使用过华为运动健康App,未关联华为运动健康服务。


2、隐私接口返回状态码3时:
1)可以进行相关提示,比如:“非华为运动健康App用户”(仅做参考)。
2)可以根据华为运动健康App开放授权指南通过Health Kit云侧提供的H5页面关联华为运动健康服务。
注意,一般为3的用户都没有产生过数据,关联华为运动健康服务后,也存在查询数据返回空的情况。
URL中的参数client_id和redirect_uri是固定的,您不需要任何操作,URL中仅支持修改以下参数:


用户连接成功后,需要用户手动关闭此页面:

3、针对您隐私接口返回3及运动健康App中查询有数据的情况,请检查用户登录的是否为同一账号,请使用运动健康App中有数据的账号进行登录授权Health Kit。
了解更多详情>>
更多开发指导请参见开发文档
更多运动健康解决方案请参见运动健康场景
关注我们,第一时间了解 HMS Core 最新技术资讯~
【FAQ】关于获取运动健康数据的常见问题及解答的更多相关文章
- 【FAQ】申请运动健康服务验证环节常见问题及解答
华为 HMS Core 运动健康服务(HUAWEI Health Kit)提供原子化数据开放.应用在获取用户数据授权后,可通过接口访问运动健康数据,对用户数据进行读写等操作,为用户提供运动健康类数据服 ...
- 【FAQ】申请Health Kit权限的常见问题及解答
华为运动健康服务(HUAWEI Health Kit)提供原子化数据开放,用户数据被授权获取后,应用可通过接口访问运动健康数据,对相关数据进行增.删.改.查等操作.这篇文章汇总了申请开通Health ...
- 【FAQ】申请华为运动健康服务授权的4个常见问题及解决方法
华为运动健康服务(HUAWEI Health Kit)提供原子化数据开放,在获取用户对数据的授权后,应用可通过接口访问运动健康数据,对用户数据进行增.删.改.查等操作,为用户提供运动健康类数据服务.这 ...
- Mate 40系列发布 搭载华为运动健康服务带来健康数字生活
10月30日,HUAWEI Mate 40系列国内发布会如期而至.Mate 40系列除了拥有强悍的性能.全能记录影像和突破性的交互之外,还搭载了全新升级的HMS Core,其中,Health Kit( ...
- 【FAQ】运动健康服务REST API接口使用过程中常见问题和解决方法总结
华为运动健康服务(HUAWEI Health Kit)为三方生态应用提供了REST API接口,通过其接口可访问数据库,为用户提供运动健康类数据服务.在实际的集成过程中,开发者们可能会遇到各种问题,这 ...
- iOS - 苹果健康架构 & 基于HealthKit的健康数据的编辑
最近公司需求,研究了一周之久的苹果健康架构,内容包括:资料调研.报告与HealthKit.framework - API,这一研习还在持续进行中.至此,主要认识到了2点:对苹果健康健康架构设计与实现原 ...
- 华为运动健康服务Health Kit 6.9.0版本新增功能揭秘!
华为运动健康服务(HUAWEI Health Kit)6.9.0版本新鲜出炉啦! 一文了解新增功能,快来一起加入Health Kit生态大家庭! 一.更丰富:睡眠呼吸记录健康数据开放 呼吸机是用于为患 ...
- 《PDF.NE数据框架常见问题及解决方案-初》
<PDF.NE数据框架常见问题及解决方案-初> 1.新增数据库后,获取标识列的值: 解决方案: PDF.NET数据框架,已经为我们考略了很多,因为用PDF.NET进行数据的添加操作时 ...
- 项目中常用功能,如:流媒体、健康数据(步数等)等-b
整理iOS开发中使用的各种流媒体和常用的高级功能.由于时间关系,目前只写了一部分功能,全部都采用的是系统方法,没用第三方,截图如下: screen1.png screen2.png 个人比较懒,不爱多 ...
- sql server2008数据库复制实现数据同步常见问题
sql server2008数据库复制实现数据同步常见问题 在原作者基础上追加 sql server2008数据库复制实现数据同步常见问题 23.发布 'xx' 的并发快照不可用,因为该快照尚未完全生 ...
随机推荐
- 关于VS2022使用EF生成实体模型报错的问题:运行转换:System.NullReferenceException:对象引用未设置为对象的示例。
起因: 之前版本vs2022生成EF模型一直没有问题,在更新了最新的vs2022之后,版本号17.6+,出现此问题: 运行转换:System.NullReferenceException:对象引用未设 ...
- MySQL锁表解锁表
CREATE TABLE t1 ( id int(11) NOT NULL, val varchar(10) DEFAULT NULL, PRIMARY KEY (id) ) ENGINE=InnoD ...
- SpringBoot+MyBatisPlus实现读写分离
前言 随着业务量的不断增长,数据库的读写压力也越来越大.为了解决这个问题,我们可以采用读写分离的方案来分担数据库的读写负载.本文将介绍如何使用 Spring Boot + MyBatis Plus + ...
- Prism进入视图时导航的三种方式
Prism导航 新建视图UserControl及其ViewModel,被跳转的视图的VM需要实现INavigationAware 在App.xaml.cs中注册视图及其ViewModel // App ...
- uni-app基于原生input增强选择picker插件 可用于地图定位选位置 页面跳转选数据
前端基于原生input增强选择picker插件 可用于地图定位选位置 页面跳转选数据, 下载完整代码请访问uni-app插件市场地址: https://ext.dcloud.net.cn/plugin ...
- WinUI(WASDK)使用MediaPipe检查人体姿态关键点
前言 之前有用这个MediaPipe.NET .NET包装库搞了手势识别,丰富了稚晖君的ElectronBot机器人的第三方上位机软件的功能,MediaPipe作为谷歌开源的机器视觉库,功能很丰富了, ...
- MyBatis理论
MyBatis简介 MyBatis是什么? MyBatis是一款优秀的持久层框架,一个ORM(对象关系映射)框架,它支持定制化SQL.存储过程以及高级映射.MyBaits避免了几乎所有JDBC代码和手 ...
- jQuery事件自动触发
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 三万字盘点Spring 9大核心基础功能
大家好,我是三友~~ 今天来跟大家聊一聊Spring的9大核心基础功能. 其实最近有小伙伴私信问我怎么不写文章了,催更来了 其实我不是不写,而是一直在写这篇文章,只不过令我没想到的是,从前期的选题.准 ...
- BTC中的数据结构
BTC中的数据结构 普通指针 普通指针存储的是某个结构体在内存中的地址(假如P是指向一结构体的指针,那么P里面存放的就是该结构体在内存中的起始位置) Hash pointer(哈希指针) 对于如下的节 ...