目录

一、Health Kit健康数据采样, 原子采样数据问题

二、Health Kit查询历史数据查询数据和返回数据不一致

三、Health Kit关于获取历史数据问题

四、调用Health Kit接口出现获取不到数据的情况

问题解答

Q1:Health Kit健康数据采样, 原子采样数据问题

【问题描述】

1.体脂数据中的肌肉量和水份量是如何获得的,是用户自己上传体脂数据中的体重、体脂,然后系统通过计算公式得到数据吗?

2.日常活动统计数据包含什么内容,如何获取这些数据?

  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的用户都没有产生过数据,关联华为运动健康服务后,也存在查询数据返回空的情况。

调用示例:https://oauth-login.cloud.huawei.com/oauth2/v3/authorize?response_type=code&client_id=106804381&redirect_uri=https%3A%2F%2Fh5hosting.dbankcdn.com%2Fcch5%2Fhealthkit%2Flink%2Fpages%2FprivacyManage.html&access_type=offline&display=touch&state=zh-cn

URL中的参数client_id和redirect_uri是固定的,您不需要任何操作,URL中仅支持修改以下参数:

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

3、针对您隐私接口返回3及运动健康App中查询有数据的情况,请检查用户登录的是否为同一账号,请使用运动健康App中有数据的账号进行登录授权Health Kit。

了解更多详情>>

更多开发指导请参见开发文档

更多运动健康解决方案请参见运动健康场景

访问HMS Core 联盟官网

获取HMS Core 开发指导文档

关注我们,第一时间了解 HMS Core 最新技术资讯~

【FAQ】关于获取运动健康数据的常见问题及解答的更多相关文章

  1. 【FAQ】申请运动健康服务验证环节常见问题及解答

    华为 HMS Core 运动健康服务(HUAWEI Health Kit)提供原子化数据开放.应用在获取用户数据授权后,可通过接口访问运动健康数据,对用户数据进行读写等操作,为用户提供运动健康类数据服 ...

  2. 【FAQ】申请Health Kit权限的常见问题及解答

    华为运动健康服务(HUAWEI Health Kit)提供原子化数据开放,用户数据被授权获取后,应用可通过接口访问运动健康数据,对相关数据进行增.删.改.查等操作.这篇文章汇总了申请开通Health ...

  3. 【FAQ】申请华为运动健康服务授权的4个常见问题及解决方法

    华为运动健康服务(HUAWEI Health Kit)提供原子化数据开放,在获取用户对数据的授权后,应用可通过接口访问运动健康数据,对用户数据进行增.删.改.查等操作,为用户提供运动健康类数据服务.这 ...

  4. Mate 40系列发布 搭载华为运动健康服务带来健康数字生活

    10月30日,HUAWEI Mate 40系列国内发布会如期而至.Mate 40系列除了拥有强悍的性能.全能记录影像和突破性的交互之外,还搭载了全新升级的HMS Core,其中,Health Kit( ...

  5. 【FAQ】运动健康服务REST API接口使用过程中常见问题和解决方法总结

    华为运动健康服务(HUAWEI Health Kit)为三方生态应用提供了REST API接口,通过其接口可访问数据库,为用户提供运动健康类数据服务.在实际的集成过程中,开发者们可能会遇到各种问题,这 ...

  6. iOS - 苹果健康架构 & 基于HealthKit的健康数据的编辑

    最近公司需求,研究了一周之久的苹果健康架构,内容包括:资料调研.报告与HealthKit.framework - API,这一研习还在持续进行中.至此,主要认识到了2点:对苹果健康健康架构设计与实现原 ...

  7. 华为运动健康服务Health Kit 6.9.0版本新增功能揭秘!

    华为运动健康服务(HUAWEI Health Kit)6.9.0版本新鲜出炉啦! 一文了解新增功能,快来一起加入Health Kit生态大家庭! 一.更丰富:睡眠呼吸记录健康数据开放 呼吸机是用于为患 ...

  8. 《PDF.NE数据框架常见问题及解决方案-初》

    <PDF.NE数据框架常见问题及解决方案-初> 1.新增数据库后,获取标识列的值: 解决方案:    PDF.NET数据框架,已经为我们考略了很多,因为用PDF.NET进行数据的添加操作时 ...

  9. 项目中常用功能,如:流媒体、健康数据(步数等)等-b

    整理iOS开发中使用的各种流媒体和常用的高级功能.由于时间关系,目前只写了一部分功能,全部都采用的是系统方法,没用第三方,截图如下: screen1.png screen2.png 个人比较懒,不爱多 ...

  10. sql server2008数据库复制实现数据同步常见问题

    sql server2008数据库复制实现数据同步常见问题 在原作者基础上追加 sql server2008数据库复制实现数据同步常见问题 23.发布 'xx' 的并发快照不可用,因为该快照尚未完全生 ...

随机推荐

  1. 安卓第一课:gradle仓库的导入

    今天装好android studio,结果刚进入就报错了: SSL peer shut down incorrectly 读注释发现原来是gradle下载文件不成功.果然,原来是vpn掉线了,上网查了 ...

  2. Spring源码核心剖析

    前言 SpringAOP作为Spring最核心的能力之一,其重要性不言而喻.然后需要知道的是AOP并不只是Spring特有的功能,而是一种思想,一种通用的功能.而SpringAOP只是在AOP的基础上 ...

  3. 如何取消Blazor Server烦人的重新连接?

    如何取消Blazor Server烦人的重新连接? 相信很多Blazor的用户在开发内部系统上基本上都选择速度更快,加载更快的Blazor Server模式. 但是Blazor Server由于是Si ...

  4. 如何从AWS中学习如何使用AmazonVPC

    目录 如何从 AWS 中学习如何使用 Amazon VPC? 随着 AWS 的迅速发展,Amazon VPC(Virtual Private Cloud)已经成为了一种非常重要的云计算基础设施.VPC ...

  5. 查询mysql数据库目前有哪些链接 具体ip及数量

    SELECT substring_index(host, ':',1) AS host_name,state,count(*) FROM information_schema.processlist ...

  6. 【渗透测试】Cobalt Strike制作钓鱼邮件渗透Windows

    目标 在kali中使用Cobalt Strike制作钓鱼邮件,对Windows进行渗透 机器环境 kali(服务端):192.168.175.129 win11(攻击机):192.168.175.12 ...

  7. MyBatis理论

    MyBatis简介 MyBatis是什么? MyBatis是一款优秀的持久层框架,一个ORM(对象关系映射)框架,它支持定制化SQL.存储过程以及高级映射.MyBaits避免了几乎所有JDBC代码和手 ...

  8. pip install mysqlclient命令安装mysqlclient失败的解决办法

    错误情况: 解决方法: 到这个地址下载自己版本对应的资源 https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient 如下图: 我这里首先下载了  ...

  9. Pandas:在DataFrame中添加一行,并设置行索引

    解决方案 效果图 参考链接 https://blog.csdn.net/Caiqiudan/article/details/107788525

  10. Django reset framework: 序列化

    序列化与反序列化 将模型转换为json 称之为 序列化 将json转换为模型 称之为 反序列化 何时进行序列化与反序列化 序列化:当后端将数据库中信息取出返回给前端时,要进行序列化操作 反序列化:当需 ...