Health Connect 旨在帮助客户端应用与 Health Connect API 之间实现快速便捷的集成。
下图显示了客户端应用通过 SDK 层和 IPC(进程间通信)与健康数据共享 API 集成的流程:
SDK 支持
借助此 SDK,客户端应用可以确定用户的设备上是否具有健康数据共享 API。如果不是,系统会触发可用性检查,以确定设备是否兼容。
Health Connect SDK 至少支持 Android 8(API 级别 26),而 Health Connect 应用仅与 Android 9(API 级别 28)或更高版本兼容。这意味着第三方应用可以支持使用 Android 8 的用户,但只有使用 Android 9 或更高版本的用户才能使用健康数据共享。
架构组件
1. 软件开发套件
SDK 可让客户端应用通过 IPC 与健康数据共享 APK 进行通信。
2. 客户端应用
为了与 Health Connect 集成,客户端应用会将 SDK 关联到其健康与健身应用。这提供了一个有助于与 Health Connect API 进行交互的 API Surface。
3. 健康数据共享 APK
健康数据共享 APK 是健康数据共享 API 的主要元素,包含权限管理和数据管理组件。健康数据共享 APK 直接在用户设备上提供。
4. 权限管理
健康数据共享包含一个界面,应用可通过该界面请求用户授予显示数据的权限。
它还提供现有用户权限的列表,以便用户控制多个应用对数据的访问权限。
5. 数据管理
健康数据共享提供一个界面,其中显示了所记录数据的概览,包括用户的步数、骑车速度、心率以及其他支持的数据类型。其数据管理功能包括:
CRUD 操作和数据同步:该平台针对数据提供了标准的插入、更新和删除功能。它还包含供客户端应用同步数据的功能,该功能会生成一个数据更改日志,显示数据是否已由其他应用插入或删除。
基本聚合函数:客户端可以对数据应用聚合函数,包括:
- 平均值、最小值或最大值,例如会话期间的最低心率或最高心率。
- 总和,例如一天的总步数。
- 简单测量次数,例如一周内的活动时段数。
- 支持的数据类型(例如深层睡眠时间)的总时长。
通过健康数据共享读取数据:健康数据共享允许应用在用户授权的情况下,在前台或后台读取用户的健康和健身数据。
- 前台读取:您可以在应用位于前台时从“健康数据共享”读取数据,对于耗时较长的操作,建议使用前台服务来防止中断。
- 后台读取:用户可以授予您的应用在后台运行时从健康数据共享读取数据的权限。