-
通过 HealthKit 访问健康记录
HealthKit 为各类健康数据提供了一个整合的存储库,其中包括化验结果、免疫情况以及直接从医疗机构处下载的医疗记录。探索新的健康记录类和类型,通过这些新创建的类和类型可以轻松访问高级别的记录类型,同时对底层原始数据的访问也不会受限。了解如何采用新的授权技术,让您的 app 在尊重客户隐私的同时访问健康记录数据来进行分析和展示。
资源
- Accessing Health Records
- FHIR specification (DSTU2, 1.0.2)
- HL7 FHIR Foundation
- Argonaut Data Query Implementation Guide
- 演示幻灯片 (PDF)
相关视频
WWDC20
WWDC19
WWDC18
-
搜索此视频…
下午好 我叫 Jason Morley 是 Apple Health 团队的 一名软件工程师 这是我的同事 Peyton 我想花些时间 来向你们介绍 我们今年在 iOS 12 里加入的 一项激动人心的新功能 利用 HealthKit 获得健康记录 在今年的早些时候 我们在 iOS 11.3 上介绍了 健康记录和健康
用户可以与他们的 医疗机构建立连接 并且安全地下载他们的健康记录 以便于快速访问和保管
我们从多个医疗机构那里 收集数据并且 呈现一个允许用户搜索和 显示像实验值和参考范围这种 真的能够帮助用户 去更好地了解 他们健康数据的重要细节 的时间轴
截止至今 我们已经为 超过 500 家美国医院和诊所 提供了支持 共覆盖 50 多个医疗机构 并且我们还在不断地 继续增加更多 当然了 如果没有 Health Level Seven 组织 的杰出劳动 和他们的快速医疗的交互操作能力 或 FHIR 和智能健康 IT 项目 的帮助的话 这将是不可能实现的
对我们来说 这一切都是从健康出发 我们和医疗机构建立了一个 安全的连接 并从 FHIR 直接将用户的健康记录 下载到他们的 iOS 装置上
从这里我们将它安全地 储存在 HealthKit 上 并跨越多个机构汇总数据
从现如今的 iOS 12 开始 我们提供允许你访问这个数据的 API 并且让你能够 在你的 App 中使用它
首先 我来介绍一下 我们新加的用来支持这个功能的 新的样本类型
然后 我们便能够看到 你是如何授权自己的 App 并且 查询数据的 然后 我将简短介绍一下 FHIR 并且向你们展示 一下它有多少种可能性
最后 我们可以花些时间 来思考一下 在这个敏感的领域 你该如何保护你的用户隐私 好了让我们进入正题
如果你之前使用过 HealthKit 的话 你可能会对 HKSampleType 和它的子类很熟悉 它们是像分组一样的数据 例如 QuantityType 这种 由一个单一数值代表 的分组数据 像步数和心率
然而 CategoryType 分组数据 是以枚举来判断其特征的 像睡眠分析这种 我只是躺在床上 还是睡着了 我的月经流量如何等 并且 为了支持健康记录 我们引入能够将 你在 Health 中看到的 像状态和药方这种 健康记录分类的 HKClinicalType
在每个样本类型中 不同的数据类型 由一个类型识别码来进行区分
HKClinicalType 识别码 通过相应的 健康记录和健康的类别来识别 相应的临床类型 我们会有过敏等一些 可能仅仅是短期才会出现的状况 例如怀孕 或者是一些经常性的状况 比如第二类型糖尿病 免疫接种 实验结果 这些可能是为了 我每年的身体检查 而进行的血糖测量
药物 流程 诊断过程或是手术
生命体征中像这种 血压或体重的测量 除了这些样本类型和 样本类型标识符以外 我们还引入一个叫做 HKClinicalRecord 的 新的 HK 样本子类
如果你对于 在 HealthKit 中操作这些样本 并不熟悉 我们可以深入探讨这个话题 并且我将在最后介绍 一些关于它的细节
如果你打算使用 HKClinicalRecord 的话 那么 这里有一些 你需要了解的关键属性 关于临床类型 我们之前也探讨过 它允许你去确定 一个记录的类型 健康记录 就像免疫接种一样 我们提供了一个名字 它是一个我们在 Health 中 用来向用户展示健康记录的 一个字符串 我们从 FHIR 资源中把它选择出来 并且你能够将 你的 App 之前的经历 与用户所熟悉的东西 绑定在一起
你可以从这个实验结果中看到 有许多可选择的 表示方法和名称 包括 LOINC 编码系统里的 一个编码 这是一个医疗信息界的 行业标准化参考 并且它是 FHIR 进行观测所需要的 从这里你可以看到 我们已经采用 LOINC 编码并且 执行了一个查找去 提供一个我们将为你们 呈现的一个规范名称
最终 我们提供完整的 FHIR 资源的访问端口 但是从 HKClinicalRecord 中 你还可以得到很多益处 所以我现在 先把它放在一边 稍后我们再回来讨论
像所有的健康数据一样 数据的来源 是非常重要的
你想要知道这个健康数据 是从哪里来的 并且和 HealthKit 的其他部分一样 我们使用 HKSample 的超类 HKSource 来对其进行建模
我们将名称设置为 医疗机构 跟我们分享的名称
并且我们提供了一个 包标识符 它是一个能够 使该医疗机构实现 跨多个用户和多个设备登录的 稳定的标识符
所以现在 我们已经看到了这个新的样本类型 让我们来看看 你如何授权 App 并查找数据的吧
可以看到 这里有个装有丰富的 医疗记录的庞大信息库 并且我们认为 这对你来说 是一个能够为你的用户提供 关于他们的健康数据的 绝佳体验的 千载难逢的机会 但是当然了 健康记录也含有 令人难以置信的敏感信息 用户的健康记录或许会 包含着他们正在服用的 药物的详细信息 或者是他们每天的基本生活 伴随着的一些状况
这可能是他们 不愿意与他们亲近的朋友或家人 所分享的信息 并且伴随着用户和医疗机构 之间的交流 这种情况 会随着时间的推移而发生变化 他们或许会得到 关于这个状况的新的诊断
所以 为了能够更好地帮助我们的用户 去理解和管理这些数据的 访问 我们引入了 一个具体针对健康记录的授权流程
当你的 App 申请授权时 我们会提供一个 新的针对特定临床类型的许可表
首先 我们告知用户 在 App 上分享数据意味着什么 并且告知用户 它有多么敏感 因为我们要使用这个新的授权流程 所以无论何时 只要你申请授权 你需要保证 你的授权申请时间足够 以确保你的用户能够 充分地理解 这个新的流程的内容
在这之后 我们允许用户 从你已经提出请求的类别中 选择他们想要和你的 App 实现共享的数据类型
我们还提出了一个 新的目标字符串 和在 App 解释说明部分中的 你的 App 的隐私政策 这是一个去向用户解释 你为什么需要去访问数据 你将用它来做什么 和你将如何保护他们的数据的 千载难逢的好机会 你一定要确保 你的要求和你的需要 是成比例的 用户真的会 很惊讶并且担心是否 他们在这里所看到的数据类型 并不属于你的 App 的主要功能 并且最终会因为 用户和他们的医疗机构的互动 而造成数据会随着时间发生变化 我们正在引入一个 新的方法来控制与你的 App 共享新数据的方式 我们默认会去询问 之前每一次共享的每一个数据
这意味着每当新的数据可用时 我们可能需要 提交新的许可表 所以每当你需要查询数据的时候 你都应该去 申请相应的权限
好 那么我该怎样开始 并且请求权限呢
这个流程看上去 会让那些之前用过 HealthKit 的人 觉得很熟悉 首先 我需要配置这个项目 在进行授权请求后
最后查询数据 为了配置你的项目 你需要在启动 HealthKit 以后 在 Xcode 中 添加一个新的
健康记录功能 然后你在你的 Info.plist 中 添加一个新的 健康记录用法说明字符串
再次说明 这是你的好机会 去向用户解释 你为什么需要得到数据 和你将利用它来做什么
完成上述步骤后 你可以请求权限了
我在这里定义 我希望访问的类型 状态
免疫接种和药物治疗
然后你就可以 在健康中心中 调用授权请求
请确保已经处理了所有错误 在这之后 你便能够进行查找了 你应该知道 为了维护用户的隐私 我们不会向你透露 哪个分类是用户已准许访问的 或是已拒绝访问的
现在 让我们来说查询 因为 HKClinicalRecord 是一个 在 HealthKit 中 你可以很好地利用 所有的现有样本查询基础设施的 HKSample SampleQuery AnchoredObjectQuery 和 ObserverQuery 都将正常工作 并且如果你的用户已经准许 后台连续访问 delivery 也将正常工作 再次说明 你定义了 你希望查找的类型 我们在这里正在创建一个查找示例 并且你可以在健康中心执行它
以上就是最基本的 授权流程 但我们已经介绍过了 一些针对于健康记录的 特定的额外机制 对于授权 我们有一个 新的 API 获取请求 它允许你去确定 我们是否去向用户 展示许可表
这给了你一个机会去 确定你的用户是否 需要去看这个许可表 并且选择性地展示一个 UI 以便在授权前给他们提供 更多的信息
为了做到这一点 你可以去健康中心 访问授权请求状态 处理错误 并且如果请求状态是 可以请求的话 你可以 选择在请求权限之前 去展示 UI
现在 可能也会有一些 你的 App 所需要访问的 数据类型 来保证安全 又或者你如果有一个需要 获得全面的一系列类型的 研究型 App 来 避免有误差的结果
我们在 Info.plist 中 有一个新的允许你去指定这些类型 所必需的键 并且如果用户没有准许给这些类型授权 可它们仍然在的话 我们将返回一个 新的所需类型错误 这能够让你确定 如何去表现 去选择性地去向用户解释 如果你没有这个数据的话 你就不能够继续
你可以通过在你的 Info.plist 中 添加新的所需的 阅读权限密钥 来实现它
在这里我说我需要 过敏 当前状态 和免疫接种的信息 然后你在 授权请求中 处理新的错误
你要确保能够明智地使用它 并且尽量不去限制 基于你可访问数据的 App 的功能 你真的想要确定 无论你的用户想要 分享多少数据 都有尽可能多的用户 能够从你的 App 中受益
所以这是一个完整的授权流量 并且这里有一些 我希望去关注的点
首先 你应该确保无论何时 每一次你想要访问数据 你都需要去请求权限 尤其是现在 因为用户可能希望每次有新数据进入时 都查看这个许可表 因此我们可能 要在每次你需要查找的时候 去呈现这个许可表
你还应该确保 这个请求只会访问 你需要的数据 并且最后 你应该 通过充分利用新的 API 来为用户提供更好的使用环境 也为你自己 提供充足的时间来验证请求
我想要把 下面的内容交给我的同事 Peyton 让大家来看一下 他能够用我说的这些新改进 在他的 App 里做些什么 谢谢
谢谢你 Jason 我正在忙于一个 为登山者们的下一次登山 进行训练的 App 我已经得到一个 包括我的所有用户走路 徒步旅行和 爬楼梯训练的 HealthKit 动力视图 现在 经过广泛的市场调查 我已经确定了 那些去登山的登山者们 是去山上旅行 而旅行者应该知道他们的疫苗接种状态 因此 通过未来发展的 传递特性 登山者们应该知道 他们的疫苗接种状态 所以 我将帮助我的用户们 我已经开始进行一项新的实验 一个免疫仪表板 所以 请允许我 点击一下这个 这是我的免疫仪表板 首先我将 为我的用户展示 他们目前的疫苗接种 并且我将用这个 HKClinicalRecords 来显示名称属性 我已经在我的项目中 添加了健康记录功能 并且我已经创建了一个目标字符串 来告诉我的用户们我要如何 使用他们的免疫接种记录 现在是时候来展示我的仪表板了 所以现在 我正在 ImmunizationsViewController 中 使用这个面板 在 HealthKit 中 每次你的用户进入要用到 HealthKit 的 App 的部分时都要请求权限 是非常好的一个做法 所以对于这个 App 来说 ViewWillAppear 是个很棒的地方
在这里 首先我需要说明 我对于免疫记录样本 很感兴趣 接下来 调用我的 健康中心的 requestAuthorization 方法
在回调中 我将检查是否成功 并且恰当地 去处理错误
最终 一旦我未经授权 我将去调用这个 我即将执行的 查询免疫的方法 在这个免疫接种查询中 我将创建一个示例 我将去遍历所有的返回样本 并且我将让 每一个样本的显示名称 都通过我的数据源 好了让我们开始吧
在这里 我已经得到了我的查询样本 并且我正在使用人类 样本记录类型 不需要足够确定 因为我想要 所有用户的免疫接种 并且同样没有限制因为 我想要得到 所有用户的免疫接种 没有排序描述符 这些样本以什么顺序返回 对我来说没有关系 并且我要根据这来检查结果 和看是否存在 没有被合适处理的错误
接下来 我要遍历一遍样本 并且我将根据显示名称让 这些样本 通过我的数据源
有了我的数据源里的这些名称 便是时候去主队列 调用这个我之前写的 重加载的 UI 方法了
最后 我要在健康中心中 执行我的这个样本查找 以上就是整个过程 现在让我们来建立并运行它吧
所以 这是我的训练日志 我将要点击我的 免疫仪表板选项 我看到一个新的健康记录授权表 它向我的用户解释 我的 App 可能会如何 使用用户的健康记录的
我要点击继续 然后在这里 我的用户可以 准许或拒绝 他们觉得合适的类别 这是我早些时候 在我的 Info.plist 中 伴随着一个我的 App 隐私政策的链接 所定义的目标字符串 现在用户必须明确地 切换每一个单一类别 没有一个可以 一次性打开所有类别的按钮
所以 出于这次演示的目的 我打算启用免疫接种 并且去分享现在的记录 至于未来的记录 我将把它设成默认为在分享前进行询问 然后我点击完成 然后 就像这样 我拥有了一个 我所有用户的免疫接种清单 所以 这只是 所以这只是使用显示名称 但是还有很多信息 包含在拥有 临床记录的 FHIR 资源当中 所以 为了让你了解更多关于 FHIR 的信息 我将把接下来的部分 交还给 Jason
谢谢你 Peyton 好了 Peyton 刚才给我们展示了 在我们的 App 中 我们如何去申请权限 如何查找数据 以及如何在 HKClinicalRecord 上 利用新的显示名称 以用户们所熟悉的方法 去显示信息
所以 现在让我们来看看 FHIR 以及你能够用这种 丰富的数据格式来做些什么 用户在一生中会与多个 医疗保健机构进行交流 并且它们经常运用 不同的电子健康记录系统 而这些系统 并不总是以同样的方式 来表示数据 这便使得交互操作性 变得非常困难 所以为了解决这个问题 医疗团体为了一个叫做 Argonaut 的项目 而聚集了起来 这个项目利用 FHIR 一个灵活的表示健康记录的 JSON 表示 并且 如智能授权指南中所定义的那样 允许连接 与医疗机构保持持续性连接 并且允许数据 在一个共同格式下 跨越多个相关的机构 被下载下来
FHIR 本身模拟了 从过敏不耐症到 视觉处方的庞大的健康数据 并且它将这些数据 组成不同的数据类型 我们把这些数据类型叫做资源 每个资源都有一个资源类型 并且每个健康数据也 都有一个资源类型 如今 我们正在选择八个 最常见的资源类型 并且这些都是在 Argonaut 项目中定义的 我们将它们分成 我们之前看到的 七种不同的临床类型
你会发现我们将 得到的观测数据分成实验结果 和基于分类的生命特征 并且我们将 多种药物资源类型 归入药物类别 因此 FHIR 将数据 表示为一个 JSON 字典 并且有一些关键属性 会在所有的 FHIR 资源当中表现出来
比如资源类型 在这里我们看到的是一个观测数据 并且它告诉我们 在健康的情况下 这是一个实验结果 还是一个生命特征
我们也有一个代表 所有资源类型的 ID 这是一个属于这个资源的 独一无二的标识符 但是你应该注意它只是 在这个医疗机构中的 这个资源类型里 是独一无二的
FHIR 的最基本的一个 建筑模块就是编码
这允许我们对 外部编码系统中的 唯一标识符或者编码 能有一个参考 有大量的在 FHIR 中 指定的编码系统 你可以用这些来 找到更多在医学记录中 所涉及的 或是跨多个医疗机构 相关联的 项目信息 在这里 我们实际上是在看一个 类别编码 它告诉我们 这是一个实验结果
当然这里还有一个 针对于正在被测量的内容的代码
这是在 LOINC 编码系统中 定义的血糖 它能够使用这段代码 并且在 LOINC 数据库中 查找能够替代的名称 和更多的信息 当然了这是一个观测 所以我拥有 被观察到的值 这是每分升 60 毫克 并且你会注意到 即使单位都被编码过了 我对于正在发生的事情 有一个非常全面的了解
FHIR 资源有很多 额外的数据元素 并且我鼓励你们去看看 Argonaut 项目的文档 来了解更多的信息 我将在最后 详细介绍这些 在 HealthKit 中我们建模了一个 FHIR 资源 来作为 HKFHIRResource
我们提供了一些关键属性 比如数据和对于完整的 原始数据的访问通道
我们表示出像 资源类型和标识符 这样的常见元素 你可以利用可编码 Swift 或 JSON 序列化 来访问这些数据 在这里 你可以看到 我已经定义了我自己的可编码结构 我的可编码观测 并且我正在用它来 寻找之前我们看到的量化值 你可以认为 数据结构是正确的 因为我们只通过 API 分享有效的 FHIR 资源 我们也引进了一些 更为确定的信息 来使得你可以 更好地操作 HKClinicalRecord 我们有一个允许你去 按资源类型查找的推断 在这里我在查找处方 或者是 FHIR 的医疗订单
我们同样也有一个 允许你去通过其来源 资源类型 以及标识符 来获得唯一标识记录的推断 这会是非常有用的 因为 FHIR 资源能够 参考其他的 FHIR 资源 例如 一个药物可能会 参考它要 治疗的情况
现在 这里有一些 当你去操作 FHIR 时你需要 知道的额外的事项
首先 FHIR 资源可能 包含他们自己的日期 举个例子 处方中可能会 包含处方的订单数据 而身体状况中 可能会包含开始日期 消减日期以及 首次检查时的处方日期
因此 你应该直接使用 FHIR 资源 去为每一个 资源类型来 访问这些日期
在 HKSample 的超类中 可获得的开始日期和截止日期 被设置为我们 第一次在 Health 中 加入那个资源的日期
当你去判断一个独一无二的 健康记录时 你应该去使用源代码 资源 类型和标识符 这允许你在 医疗机构 更新的过程中 识别健康记录的整个生命周期 并且最终 你应该知道 就数值精确度而言 FHIR 和 JSON 并不完全统一
FHIR 将小数点后面的 数字的个数赋予了重要性 并且当你使用可编码 Swift 或 JSON 序列化时 它可能会丢失 如果对于你的 App 来说 这些信息 非常重要的话 那么可编码 Swift和 JSON 序列化 或许并不是很合适的工具
就此而言 我很乐意让 Peyton 回来继续他的演讲 来让我们看一下通过这个新的 API 他都能做些什么 谢谢你 Jason 那么回到之前我一直在从事的 免疫接种仪表板上 我正在使用 HealthKit 去获取 我的用户的疫苗接种 但是现在 对于用户来讲 他们很难知道 他们有什么疫苗接种 以及他们可能会需要接种什么疫苗 所以我将会通过 一个疫苗接种清单 来解决这个问题 用户们可以看到用 通俗语言说明的 他们的疫苗简介
要填充这个表的话 我需要知道的是 这个组合疫苗 增加抵抗水痘和 MMR 的免疫力 卫生机构讲着不同的语言 所以我不能仅仅 依赖于名字 所以 这就是 FHIR 的互操作性 所扮演的角色
FHIR 提供了一种方式去 使用预定义代码而不是 自然语言 来说明事物
所以 在看过 FHIR 文件以后 这便是我想到的 能够用来 识别水痘疫苗的算法
首先 我将从 JSON 中 得到免疫记录 我将把它反序列化 并在 CVX 系统中 提取疫苗代码 CVX 是一种在免疫接种中 常用的编码系统 还有很多其他的 针对不同医学领域的编码系统
最后 我将把我在免疫接种记录中 发现的 CVX 码和我所知道的 能够增强对水痘的免疫力的 疫苗清单 进行比较 如果它们互相匹配 我会在我的 UI 中 水痘的旁边做一个标记 所以 接下来让我们来讨论一下 免疫记录 JSON
这个结构以一个 资源类型免疫接种开始 这里有一个疫苗代码对象
包含一个数组的编码 也许会出现多个编码 所以我需要去通过系统查找 来找到 CVX 在这个例子中 第一个系统是 NDC 所以我往下找直到看到 CVX
就这样我不断查找 然后我就会看见 我有 MMRV 这就是这些 免疫记录 JSON 的结构 现在是时候来实践了 所以我们现在回到 我的免疫视图控制器中 我已经提前完成了一些工作 来使用这个清单的 UI 并且我用 showChecklist 属性实例化了它 那么现在 是时候来用数据 来填充我的清单了
现在我在这个 免疫方法的查询中
当我对我的用户样本进行遍历时 我将在一个叫做 matchCodedVaccine 的新方法中 添加一个调用 并且如果 遇到的样本是 FHIR 资源的话 我将会通过它 好了现在让我们来实践吧
在这里 我在资源中的 matchCodedVaccine 并且我需要去做的是对这个 FHIR 资源数据 进行反序列化操作 取出接种代码 查找 CVX 并且将它和 不同疾病的 CVX 代码进行比较 在如何选择反序列化 FHIR 资源上 我有很大的自由 所以今天 我将使用 可编码 Swift 我需要为我 真正感兴趣的关键字 去定义一个可编码量
好了我已经操作完了 每个免疫资源有一个疫苗代码 每个疫苗代码有一个 编码数组并且 每个疫苗编码有一个 系统和一个代码 有了这些 我实例化一个 JSON 解码器 并且用它来将一个 FHIR 资源数据解码成一个 免疫资源 剩下的就是去对每个编码进行遍历 检查一下看是否 这个系统是 CVX 然后将代码传递给此方法 好把它标记在数据源中 这个方法的任务就是 将代码和包含每个疾病的代码的清单 相比较 然后 如果在 UI 中发现了匹配标示 说明它是我们已发现的疾病 所以 我要用它来建立 来运行并查看 我的免疫清单
所以现在 我在我的训练日志中 我要去点击免疫接种键 就像这样 通过几行代码 我便拥有了一个免疫清单 这就是一个用 FHIR 来 解决问题的例子 现在我将把时间 留给 Jason
Jason 谢谢你 Peyton 所以 Peyton 已经向我们展示了 我们该如何运用丰富的 FHIR 数据 和如何合理地利用我们 所提供的编码 这真的为我们的用户 在他们的健康记录方面 提供了非常有意义的全面的使用
现在 让我们来想一想 在这个领域 你该如何保护你的用户的隐私
正如你所看到的一样 这是一个令人难以置信的敏感数据
我们已经从头开始 建立了隐私 并与医疗机构 建立了直接的安全连接
能够直接从用户的 iOS 设备上下载数据 把它安全地 存储在 HealthKit 中 并且围绕着这个 数据的访问端口 提供了全面的管理工具 你的用户们将期望你去 以同样的关心和关注程度 去对待他们的数据
你在这里做的每一个选择 都将直接影响到每个用户
这可能是一个积极的影响 并且这就是我们选择 去提供这个 API 的原因 但是 这个影响也可能是负面的 如果用户觉得这个数据 不受他们的控制 或更糟的是 数据会未经他们同意被分享出去
你可以对你的用户表现出尊重 并且通过给他们 提供关于数据的清晰的政策 去告诉他们 你要用这个数据做什么 来建立一段可信的关系 从你的 App 你的目标字符串 你的隐私政策开始 到你处理该数据时 的每一步 都需要这种可信的关系
举个例子 你应该确保 你为你的用户提供了 你是如何管理他们的数据的细节 你应该发布清楚的 保留政策 并且 你应该给他们提供工具 去允许他们删除 他们不再想要与你分享的数据 最终 你应该确保 你请求的数据 和你所要用到的是成正比的 你永远都不该去要求 比你所需要的更多的数据
我鼓励大家去看看 星期四下午 4 点的 隐私对话 通过更好的隐私建立更好的 App 它包含了整个生态系统 所以这是个 去发现更多信息的好机会 所以 我们已经看到了我们 早就介绍过的支持健康记录的 新的样本类型 我们明白如何在我们的 App 中 配置授权和隐私字符串 以请求权限和查找数据
希望我所展示的东西 足以激起你的兴趣 去探索和发现更多关于 FHIR 的信息 并且我们已经看到了 为了帮助用户们保护他们的隐私 你还能做什么
我们为我们的开发团队 所创造的精彩的 App 和当它访问用户的健康数据时 赋予用户 真正的权力 而感到惊喜
这是一个我们基于健康 和 HealthKit 的探究 并且它也是 我们对于 ResearchKit 和 CareKit 的延续 今天 伴随着健康记录 和 HealthKit 我们非常激动地 跟大家一起探讨这些
我们已经迫不及待地想知道 你们能够开发出什么
你可以从我身后的 URL 中 和我们拥有的一些实验室中 找到我之前说过的文件 在这次谈话以后 会有一个健康和健身实验室 我们会在那里 与你一起体验这个新的 API 我们的同事 Anherika 和 Kareem 将在明天早上进行一个会谈 来介绍新的运动方式 并且我们明天 还有一项关于健康健身的研究 那对你来说将是一个 了解别人和与我们交流的好机会 所以请你们明天一定不要错过 对此 非常感谢大家 希望大家有一个精彩的会议 [ 掌声 ]
-