健康

  
通过平台无关的方式构建高性能健康应用。

下表列出了 androidx.health 组中的所有工件。

工件 稳定版 候选版本 Beta 版 Alpha 版
health-services-client - - - 1.0.0-alpha03
health-connect-client - - - 1.0.0-alpha02
此库的上次更新时间:2022 年 6 月 1 日

声明依赖项

如需添加 Health 的依赖项,您必须将 Google Maven 代码库添加到项目中。如需了解详情,请参阅 Google 的 Maven 代码库

在应用或模块的 build.gradle 文件中添加所需工件的依赖项:

Groovy

dependencies {
    implementation "androidx.health:health-services-client:1.0.0-alpha03"

    // To build applications that can read or write user's health and fitness records.
    implementation "androidx.health:health-connect-client:1.0.0-alpha02"
}

Kotlin

dependencies {
    implementation("androidx.health:health-services-client:1.0.0-alpha03")

    // To build applications that can read or write user's health and fitness records.
    implementation("androidx.health:health-connect-client:1.0.0-alpha02")
}

反馈

您的反馈将帮助我们改进 Jetpack。如果您发现了新问题,或对此库的改进有自己的见解,请告诉我们。创建新问题前,请先查看此库中的现有问题。您可以点击星标按钮,为现有问题投票。

创建新问题

如需了解详情,请参阅问题跟踪器文档

Health Connect 客户端版本 1.0

版本 1.0.0-alpha02

2022 年 6 月 1 日

发布了 androidx.health:health-connect-client:1.0.0-alpha02版本 1.0.0-alpha02 中包含这些提交

API 变更

  • 废弃了 AggregationResult 中的 hasMetricgetMetric,添加了包含和获取运算符 (I7cc7c)
  • 添加 OvulationTest.Result.HIGHOvulationTest.Result.INCONCLUSIVE。(I9f9c4)

bug 修复

  • 将 SDK 要求降低到 26。(I6d201)

版本 1.0.0-alpha01

2022 年 5 月 11 日

发布了 androidx.health:health-connect-client:1.0.0-alpha01版本 1.0.0-alpha01 中包含这些提交内容

新功能

  • 提供相关 API,用于读取其他应用分享的健身与健康记录。
  • 提供相关 API,用于写入健身和健康记录以便与其他应用共享。
  • 提供相关 API,用于检索可访问记录的汇总指标。
  • 提供相关 API,用于检索其他应用对记录的增量更改(插入、更新或删除)。
  • 提供相关 API,用于提示用户授予健康权限。
  • 提供相关 API,用于检查权限或撤消已授予的健康权限。

健康服务客户端版本 1.0

版本 1.0.0-alpha03

2021 年 11 月 3 日

发布了 androidx.health:health-services-client:1.0.0-alpha03版本 1.0.0-alpha03 中包含这些提交内容

新功能

  • 如果 IPC 与健康服务 APK 的连接中断,SDK 会自动重新注册测量、运动监听器和被动监控回调注册请求。

API 变更

  • SDK 库的 minSdkVersion 已提升为 API 级别 30,因为健康服务客户端目前仅在 Wear3 上受支持。

版本 1.0.0-alpha02

2021 年 9 月 29 日

发布了 androidx.health:health-services-client:1.0.0-alpha02版本 1.0.0-alpha02 中包含这些提交

API 变更

  • ExerciseClient 现在支持用户提前做好运动准备。这样,客户端就可以在用户开始运动之前,先预热传感器并等待获取 GPS 定位等。
  • 引入了 CumulativeDataPoints 和 StatisticalDataPoints AggregateDataPoint 类,有助于更好地对在用户运动进行过程中跟踪的汇总指标建模。CumulativeDataPoints 包含汇总的区间数据类型的累计值(例如,运动路线的总距离),而 StatisticalDataPoints 模型会汇总采样数据点数据(例如 HeartRateBpm 最小值、最大值和平均值)。这取代了之前的 AGGREGATE_* 数据类型,并可在 ExerciseUpdate 中通过 getLatestAggregateMetrics() 进行访问。AGGREGATE_* 数据类型已不再受支持。
  • PassiveMonitoring 事件已重命名为 PassiveGoals,后者支持用户制定目标,并在每日指标(即 DAILY_STEPS)等数据类型方面达到这些目标时收到通知。
  • 引入了新的类,即 HrAccuracy、LocationAccuracy 和 LocationAvailability,改进了心率、位置信息精确度和位置可用性的建模。
  • 改进了 ExerciseConfig 和全新 PassiveMonitoringConfig 字段的命名方式,并引入了 ExerciseConfig.shouldEnableGps 以请求由 GPS 支持的数据

bug 修复

  • 迁移到了由 proto 支持的 IPC 传输,以提供更好的向后兼容性支持

版本 1.0.0-alpha01

2021 年 5 月 18 日

发布了 androidx.health:health-services-client:1.0.0-alpha01版本 1.0.0-alpha01 中包含这些提交内容

初始版本的功能

Health Services 库为开发者提供了一组统一的 API,以便集成设备专用的传感器实现。该库自动支持 Wear OS 3 模拟器和即将推出的设备,未来还会支持更多平台。该初始版本包含三个顶级 API 接口:ExerciseClientPassiveMonitoringClientMeasureClient

ExerciseClient

ExerciseClient 是专为用于跟踪有效锻炼的应用而设计的,可提供多达 82 种不同的 ExerciseType,例如步行、跑步、舞蹈和水球等。在跟踪这些锻炼时,有 50 种不同的 DataType 可供选择,具体取决于锻炼类型和设备上可用的硬件。如需开始使用,只需执行以下操作即可:在 ExerciseConfig 中指定相关信息,调用 exerciseClient.startExercise 并通过更新监听器监听进度。

PassiveMonitoringClient

如果您的应用可跟踪用户全天的活动,那么 PassiveMonitoringClient 是一个绝佳选择。您可以使用一组 DataType 注册一个 PendingIntent,并唤醒此 intent 来处理批量更改。此外,您也可以指定 Event,例如达到特定步数。

MeasureClient

有时,用户需要衡量当前的指标(例如心率),而不是锻炼时或全天的指标。在这些时候,MeasureClient 是绝佳选择。您只需通过支持的 DataType 注册回调来接收数据流即可;当不再需要回调时,请将其取消注册。