iOS Healthkit 使用探索分析 🌛
一 基本认知层面:
HealthKit框架提供了一个结构,应用可以使用它来分享健康和健身数据。HealthKit管理从不同来源获得的数据,并根据用户的偏好设置,自动将不同来源的所有数据合并起来。应用还可以获取每个来源的原始数据,然后执行自己的数据合并。
好处:从接入HealthKit中获益
分离数据收集、数据处理和社交化
二 使用场景:
(1)设备: iPhone iWatch (注意鉴别 iPad iPod 或者应用扩展情况不能使用HealthKit框架)
(2)系统: iOS 8 及以上
(3)app 本身需要提供健或健身类服务 否则不能使用
三 注意要点:
(1) 开启使用HealthKit 要判断设备 系统支持iOS8及以上
(2) 使用该功能 必须要在销售文本和用户界面上明确的表明。特别是下面几条指导适用于所有HealthKit应用。(具体文案 参考相关类型产品 大姨妈 美柚等)
```
1. 你的应用不应该将HealthKit收集的数据用于广告或类似的服务。注意,可能在使用HealthKit框架应用 中还是要服务广告,但是你不能使用HealthKit中的数据来服务广告。
-
- 2. 在没有用户的明确允许下,你不能向第三方展示任何HealthKit收集的数据。即使用户允许,你也只能向提供健康或健身服务的第三方展示这些数据。
-
- 3. 你不能将HealthKit收集的数据出售给广告平台、数据代理人或者信息经销商。
-
- 4. 如果用户允许,你可以将HealthKit数据共享给第三方用于医学研究。
-
- 5. 你必须明确说明,你和你的应用会怎样使用用户的HealthKit数据。
```
(3) 必须为每个使用HealthKit框架的应用提供一份隐私策略 (具体文案 参考相关类型产品 大姨妈 美柚等)
参考链接:
创建隐私策略的指导:
1. Personal Health Record model (for non-HIPAA apps): http://www.healthit.gov/policy-researchers-implementers/personal-health-record-phr-model-privacy-notice
2. HIPAA model (for HIPAA covered apps): http://www.hhs.gov/ocr/privacy/hipaa/modelnotices.html
(4) 我的健康数据 是不能同步到 iclould上面的 ,也不会在多设备间同步。这些数据只会保存在用户的本地设备中。
四 产品需求:
目前敲定方向 是 基本记录功能?(待定)
参考其他相关产品:
```
- 大姨妈 : + 大姨妈 获取了 点滴出血 基础体温 睡眠分析 性行为 月经 (只读操作 从我的健康获取)
- 美柚 : - 无
- 大肚皮助手 :+ 仅仅获取运动数据同步 ,(只读操作 从我的健康获取)
其中 大姨妈 有和 他们客服聊过,基本流程如下:
(1)必须点击 首页底部【我】点击右上角设置 -【健康硬件】进行连接
(2)确认 设置中 大姨妈 的健康 相关数据权限是开启的
(3)同步时机 是每次打开应用 判断昨天是否有数据需要同步,有则同步
```
五 讨论可行方案:
讨论问题:
(1)我们需要哪些同步数据?
(2)是从我的健康读取 和 app 数据写入到我的健康 ?
(3)读写时机呢?
可行方案:
(1)参考 月来越好 记录功能 和 我的健康
例如:身高 体重 体温 心率 血压 生殖健康(月经 排卵 点滴出血 性行为)
(2)考虑:
目的是让用户从我们的app获得优良体验 还是应该以我们的app为主导
健康类的应用不止我们一家,我的健康数据会被不同的健康类的应用写入数据
我的健康数据 是不能同步到 iclould上面的 我们的应用 是同步到服务器的
(3) 产品需求 和 (2) 和 参考相关类型应用 三种因素综合考虑
开发这边给出的建议是,从我的健康中读取数据为主,匹配当前月来越好记录功能,并参考大姨妈软件:
(1)身高,体重,体温,生殖健康(月经 排卵 点滴出血 性行为)
(2)同步时机 是每次打开应用 判断昨天是否有数据需要同步,有则同步
六 iOS 客户端
(1)项目中关联HealthKit框架
(2)判断应用设备系统 是否适合使用 框架功能
(3)Request authorization(请求授权) 读 或 写 入我的健康的权利
(4) 使用举例子
HKQuantityType 为枚举类型 数量样本(步数 身高体重等),这种样本代表一些可以存储为数值的数据。调用 + quantityTypeForIdentifier: 方法,样本类型获取。
查询的基类是HKQuery,这是一个抽象类,能够实现每一种查询目标,这里我们需要查询的步数身高体重是一个HKSample类所以对应的查询类是HKSampleQuery,然后用NSPredicate限定基本查询条件等 从 HKHealthStore提供的api中读取或者写入操作
七
需要文案 参照上述要点 写 隐私条款 和 应用appstore 上的相关说明
需要测试测试 以上相关全部要点
参考:
http://www.cocoachina.com/ios/20140915/9624.html
iOS Healthkit 使用探索分析 🌛的更多相关文章
- 《iOS应用逆向工程:分析与实战》
<iOS应用逆向工程:分析与实战> 基本信息 作者: 沙梓社 吴航 刘瑾 丛书名: 信息安全技术丛书 出版社:机械工业出版社 ISBN:9787111450726 上架时间:2 ...
- 【HELLO WAKA】WAKA iOS客户端 之一 APP分析篇
由于后续篇幅比较大,所以调整了内容结构. 全系列 [HELLO WAKA]WAKA iOS客户端 之一 APP分析篇 [HELLO WAKA]WAKA iOS客户端 之二 架构设计与实现篇 [HELL ...
- iOS 苹果官方 Crash文件分析方法 (iOS系统Crash文件分析方法)
时间2013-08-20 12:49:20 GoWhich原文 http://www.gowhich.com/blog/view/id/343 苹果官方 Crash文件分析方法 (iOS系统Cras ...
- 新书《iOS应用逆向工程:分析与实战》
前无古人!小白福音!国内第一本iOS应用逆向工程类图书<iOS应用逆向工程:分析与实战>就要空降啦~! 你是否曾因应用上线的第一天即遭破解而无奈苦恼,想要加以防范,却又束手无策? 你是否曾 ...
- iOS应用架构现状分析
iOS从2007年诞生至今已有近10年的历史,10年的时间对iOS技术圈来说足够产生相当可观的沉淀,尤其这几年的技术分享氛围无论国内国外都显得异常活跃.本文就iOS架构这一主题,结合开发圈里讨论较多的 ...
- 【转】iOS应用崩溃日志分析
作为一名应用开发者,你是否有过如下经历? 为确保你的应用正确无误,在将其提交到应用商店之前,你必定进行了大量的测试工作.它在你的设备上也运行得很好,但是,上了应用商店后,还是有用户抱怨会闪退 ! ...
- iOS直播的技术分析与实现
HTTP Live Streaming直播(iOS直播)技术分析与实现 发布于:2014-05-28 13:30阅读数:12004 HTTP Live Streaming直播(iOS直播)技术分析与实 ...
- iOS应用崩溃日志分析
转自raywenderlich 作为一名应用开发者,你是否有过如下经历? 为确保你的应用正确无误,在将其提交到应用商店之前,你必定进行了大量的测试工作.它在你的设备上也运行得很好,但是,上了应 ...
- HTTP Live Streaming直播(iOS直播)技术分析与实现
前些日子,也是项目需要,花了一些时间研究了HTTP Live Streaming(HLS)技术,并实现了一个HLS编码器HLSLiveEncoder,当然,C++写的.其功能是采集摄像头与麦克风,实时 ...
随机推荐
- Kafka学习(一)kafka指南(about云翻译)
kafka 权威指南中文版 问题导读 1. 为什么数据管道是数据驱动企业的一个关键组成部分? 2. 发布/订阅消息的概念及其重要性是什么? 第一章 初识 kafka 企业是由数据驱动的.我们获取信息, ...
- Python os._exit() sys.exit() exit()区别
Python退出程序的方式有两种:os._exit(), sys.exit() 1)os._exit() 直接退出 Python程序,其后的代码也不会继续执行. 2)sys.exit() 引发一个 S ...
- Servlet 服务器 HTTP 响应
状态行包括 HTTP 版本(在本例中为 HTTP/1.1).一个状态码(在本例中为 200)和一个对应于状态码的短消息(在本例中为 OK). 下表总结了从 Web 服务器端返回到浏览器的最有用的 HT ...
- Spring MVC复选框(多项)
以下示例显示如何在使用Spring Web MVC框架的表单中使用多个复选框(Checkbox).首先使用Eclipse IDE来创建一个WEB工程,并按照以下步骤使用Spring Web Frame ...
- tinycore Network card configuration during exec bootlocal.sh
question: tinycore在boot时, 运行bootlocal.sh脚本,其中有局域网通信的部分,一直跑不通,测试了一下才知道是运行bootlocal.sh的阶段,网络可能没有配置好,ip ...
- js instanceof (2)
instanceof运算符可以用来判断某个构造函数的prototype属性是否存在另外一个要检测对象的原型链上.实例一:普遍用法 A instanceof B :检测B.prototype是否存在于参 ...
- [ JS 进阶 ] 基本类型 引用类型 简单赋值 对象引用 (转)
ECMAScirpt 变量有两种不同的数据类型:基本类型,引用类型.也有其他的叫法,比如原始类型和对象类型,拥有方法的类型和不能拥有方法的类型,还可以分为可变类型和不可变类型,其实这些叫法都是依据这两 ...
- android-support-v7使用
前言:android-support-v7与v4相对,还是有很大不同的,首先v7中分为的3个JAR包,其次v7中提供的一些布局资源,所以在使用的时候,需要将v7的源码项目导入,作为lib项目来添加到你 ...
- 相对定位position: relative;
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- JSON Extractor/jp@gc - JSON Path Extractor 举例2
测试描述 使用json返回结果做校验 测试步骤 1.配置http请求 2.根据结果树返回的json,取值 { "status_code":200, "message&qu ...