健康连接
最新更新 | 稳定版 | 候选版本 | Beta 版本 | Alpha 版本 |
---|---|---|---|---|
2024年10月16日 | - | - | - | 1.1.0-alpha10 |
请求访问数据类型
为了帮助我们加强用户隐私和安全,与健康连接集成的开发者**必须声明对数据类型的读写访问权限**,他们的应用使用这些数据类型。开发者必须根据应用的目的,为他们使用的数据库类型提供有效的用例。更多信息,请访问提供健康应用声明表单的信息和Android 权限的健康连接。
声明依赖项
要添加对健康的依赖项,您必须将 Google Maven 存储库添加到您的项目中。阅读Google 的 Maven 存储库以了解更多信息。
在应用或模块的build.gradle
文件中添加所需构件的依赖项
Groovy
dependencies { // Use to implement health connects implementation "androidx.health.connect:connect-client:1.1.0-alpha10" }
Kotlin
dependencies { // Use to implement health connects implementation("androidx.health.connect:connect-client:1.1.0-alpha10") }
有关依赖项的更多信息,请参阅添加构建依赖项。
反馈
您的反馈有助于改进 Jetpack。如果您发现新的问题或有改进此库的想法,请告诉我们。在创建新问题之前,请查看此库中现有问题。您可以通过点击星形按钮为现有问题添加您的投票。
有关更多信息,请参阅问题跟踪器文档。
健康连接测试版 1.0
版本 1.0.0-alpha01
2024年9月4日
androidx.health.connect:connect-testing:1.0.0-alpha01
已发布。版本 1.0.0-alpha01 包含这些提交。
新功能
Health Connect 测试库简化了自动化测试的创建。您可以使用此库来验证应用程序的行为,并验证它对难以手动测试的异常情况的响应是否正确。
您可以使用此库创建本地单元测试,这些测试通常会验证应用程序中与 Health Connect 客户端交互的类的行为。
此库的入口点是 FakeHealthConnectClient
类,您在测试中使用它来替换 HealthConnectClient
。它具有以下功能:
- 记录的内存表示,因此您可以插入、移除、删除和读取它们。
- 更改标记的生成和更改跟踪。
- 记录和更改的分页。
- 聚合响应支持存根。
- 允许任何函数抛出异常。
- 一个
FakePermissionController
,可用于模拟权限检查。
API 变更
1.1 版本
1.1.0-alpha10 版本
2024年10月16日
androidx.health.connect:connect-client:1.1.0-alpha10
、androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha10
和 androidx.health.connect:connect-client-proto:1.1.0-alpha10
已发布。1.1.0-alpha10 版本包含 这些提交。
新功能
- 添加了
SkinTemperature
聚合类型。(Ibe123) - 添加了
FEATURE_PLANNED_EXERCISE
常量(Ie02a3) - 添加了历史读取权限。(I5cf41)
- 添加了训练计划 API(If5be1)
- 添加了
SkinTemperatureRecord
API。(I5605d)
安全修复
- 自 此更改 起,androidx 针对 protobuf 4.28.2 编译,以解决 CVE-2024-7254。将您对
androidx.health:connect:connect-client-proto
和androidx.health:connect:connect-client-external-protobuf
的依赖项升级到最新的 1.1.0-alpha10 版本,以解决漏洞风险。
1.1.0-alpha09 版本
2024 年 9 月 18 日
androidx.health.connect:connect-client:1.1.0-alpha09
、androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha09
和 androidx.health.connect:connect-client-proto:1.1.0-alpha09
已发布。1.1.0-alpha09 版本包含 这些提交。
新功能
1.1.0-alpha08 版本
2024年9月4日
androidx.health.connect:connect-client:1.1.0-alpha08
、androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha08
和 androidx.health.connect:connect-client-proto:1.1.0-alpha08
已发布。1.1.0-alpha08 版本包含 这些提交。
API 变更
错误修复
- 当 U+ 中
HealthConnectManager
为空时,在HealthConnectClient.getSdkStatus()
中返回SDK_UNAVAILABLE
5802f - 为
RecordClasses
添加toString
覆盖 aa5dc - 删除了对新平台 API 访问的手动概述,因为在使用 AGP 7.3 或更高版本(例如 R8 版本 3.3)的 R8 和在使用 AGP 8.1 或更高版本(例如 D8 版本 8.1)的所有构建中,这会通过 API 建模自动发生。建议不使用 AGP 的客户端更新到 D8 8.1 或更高版本。有关更多详细信息,请参阅 这篇文章。(If6b4c,b/345472586)
1.1.0-alpha07 版本
2024 年 1 月 10 日
androidx.health.connect:connect-client:1.1.0-alpha07
已发布。1.1.0-alpha07 版本包含这些提交。
API 变更
错误修复
- 在绑定失败时抛出
RemoteException
而不是IllegalStateException
。(Id2233)
1.1.0-alpha06 版本
2023 年 10 月 18 日
androidx.health.connect:connect-client:1.1.0-alpha06
已发布。1.1.0-alpha06 版本包含这些提交。
API 变更
- 将
recordingMethod
定义设为公共。(I401fb)
错误修复
- 向运动路线添加文档,说明位置应在会话结束时间之前。(0e51e6)
1.1.0-alpha05 版本
2023 年 10 月 4 日
androidx.health.connect:connect-client:1.1.0-alpha05
已发布。1.1.0-alpha05 版本包含这些提交。
API 变更
- 添加了导航到 Health Connect 数据管理屏幕的意图。(Ibf591)
- 删除了
AggregationResult
中已弃用的方法。(Idbda9) - 添加了用于创建
ReadRecordsRequest
以及删除和读取记录的便捷 API,并使用具体化记录类型。(If58a5)
错误修复
- 修复了 Android 14 中的一个错误,该错误将空营养字段作为
Double.MIN_VALUE
返回。(1aa1d1) - 修复了 Android 14 中的一个错误,该错误导致按月/年期间进行聚合时由于存储桶具有相同的开始/结束时间而在响应中抛出异常。(281313)
1.1.0-alpha04 版本
2023 年 9 月 6 日
androidx.health.connect:connect-client:1.1.0-alpha04
已发布。1.1.0-alpha04 版本包含这些提交。
API 变更
- 仅限 Java:将
ChangesResponse
上的getHasMore()
字段重命名为hasMore()
。(I80695) - 在 Android 版本之间对齐
HealthPermissionsRequestContract#createIntent
检查。该契约检查所有权限是否都是与健康相关的权限。(I143fc)
错误修复
- 修复使用包含空位置列表的
ExerciseRoute
创建ExerciseSessionRecord
时抛出的异常。(I45c16) - 更新
SleepSessionRecord
文档和读取睡眠会话的示例代码。(Idf0de)
1.1.0-alpha03 版本
2023 年 7 月 26 日
androidx.health.connect:connect-client:1.1.0-alpha03
已发布。1.1.0-alpha03 版本包含这些提交。
新功能
- 用于读取和写入运动路线的 API
- 将
ExerciseRouteResult
添加到ExerciseSessionRecord
- 添加了
ExerciseRouteRequestContract
- 将
API 变更
- 添加了
ExerciseRouteResult
及其子类:Data
、NoData
和ConsentRequiredStates
。 - 添加了
ExerciseRoute
作为独立类,它保存路线的位置数据。(I22eed) - 添加了
PERMISSION_WRITE_EXERCISE_ROUTE
。(I92fc4) - 添加了
ExerciseRouteRequestContract
,添加了HealthPermissionsRequestContract
。(Ief0e5)
错误修复
- 修复了千焦耳能量的构造(Ie8791)
1.1.0-alpha02 版本
2023 年 6 月 21 日
androidx.health.connect:connect-client:1.1.0-alpha02
已发布。1.1.0-alpha02 版本包含这些提交。
错误修复
1.1.0-alpha01 版本
2023 年 6 月 7 日
androidx.health.connect:connect-client:1.1.0-alpha01
已发布。此版本是在内部分支中开发的。
新功能
- 支持 Android 14 框架版本的 Health Connect。此 SDK 是 Android 14 的先决条件。如果没有它,应用程序将无法在 Android 14 上与 Health Connect 集成。
- 添加记录方法以记录元数据。
API 变更
- 会话 API 变更
- 将各种睡眠阶段添加到
SleepSessionRecord
中,并删除了SleepStageRecord
。 - 将
ExerciseLap
和ExerciseSegment
添加到ExerciseSessionRecord
中。
- 将各种睡眠阶段添加到
- 用于读取、更改日志、插入和删除操作的周期性和每日速率限制(包括内存限制)。
- 为所有
NutritionRecord
字段添加了验证。 - 为
HeartRateVariabilityRmssdRecord
添加了验证。 - 删除了两个已弃用的 API:
HealthConnectClient#isProviderAvailable
和HealthConnectClient#isApiSupported
。
错误修复
- 修复了所有单位类型的单位相等性,相等性不再依赖于用于单位初始化的类型。例如,Mass.grams(1000) 现在等于 Mass.kilograms(1)。
1.0 版本
1.0.0-alpha11 版本
2023年2月22日
已发布 androidx.health.connect:connect-client:1.0.0-alpha11
。1.0.0-alpha11 版本包含以下提交。
API 变更
- 添加用于打开 Health Connect 的意图。(Ic8055)
- 移除一些运动类型。请使用
EXERCISE_TYPE_STRENGTH_TRAINING
、EXERCISE_TYPE_HIGH_INTENSITY_INTERVAL_TRAINING
或EXERCISE_TYPE_CALISTHENICS
代替已移除的类型。(I7291c) - 添加新的 API
sdkStatus()
,它组合了现在已弃用的两个 APIisSdkSupported()
和isProviderAvailable()
。(Iac89d) - 更改接受
providerPackageName
的 API,使其接受单个字符串而不是列表。(I67e0f)
1.0.0-alpha10 版本
2023年1月25日
已发布 androidx.health.connect:connect-client:1.0.0-alpha10
。1.0.0-alpha10 版本包含以下提交。
API 变更
ExerciseEventRecord
、ExerciseLapRecord
、ExerciseRepititionRecord
和SwimmingStrokesRecord
作为RecordTypes
已不再受支持。它们不再可以写入或读取自HealthConnect
。请从HealthConnect
集成中移除对这些数据类型的任何引用。(If7ca2)- 权限 API 的更改,使其接受基于新字符串格式的权限。此更改还需要将权限声明更改为标准的 Android 权限格式。(Ib0a2f)
1.0.0-alpha09 版本
2023年1月11日
已发布 androidx.health.connect:connect-client:1.0.0-alpha09
。1.0.0-alpha09 版本包含以下提交。
新功能
- 为 Health Connect 添加了 2 种新的女性健康数据类型:
IntermenstrualBleedingRecord
和MenstruationPeriodRecord
。MenstruationFlow.ENUMs
包括轻度、中度、重度和未知。
API 变更
1.0.0-alpha08 版本
2022年12月7日
已发布 androidx.health.connect:connect-client:1.0.0-alpha08
。1.0.0-alpha08 版本包含以下提交。
API 变更
- 添加了
BodyWaterMass
、HeartRateVariabilityRmssdRecord
作为新的受支持记录类型。(Ifd58f) - 移除
HipCircumferenceRecord
、WaistCircumferenceRecord
作为受支持的RecordTypes
。(I62fb9) - 将
MenstruationFlowRecord.flow
从stringdef
更改为intdefs
。(I0369f) - 将使用
Strings
的类似枚举的记录字段更改为Integers
,以提高性能。(I3b295) - 将
ExerciseSession
、ExerciseRepetitions
、SleepStage
类似枚举的字段从字符串类型更改为整数类型。(Id32a9) - 将
ExerciseSessionRecord.ACTIVE_TIME_TOTAL
重命名为EXERCISE_DURATION_TOTAL
。(I5d7bd) - 在
CervicalMucus
枚举中添加“异常”。将“透明”重命名为“蛋清状”以提高特异性。将CervicalMucus#appearance
和 #sensation 从StringDefs
更改为 IntDefs。(I3ac51) - 现在将
DeviceTypes
枚举的StringDef
移动到设备下的IntDefs
中。(I3abf3) - 添加
HealthConnectClient.isApiSupported()
,它在没有兼容实现的 SDK 版本上返回 false。将HealthConnectClient.isAvailable
重命名为isProviderAvailable
。(I3674e)
错误修复
1.0.0-alpha07 版本
2022年10月24日
已发布 androidx.health.connect:connect-client:1.0.0-alpha07
。1.0.0-alpha07 版本包含以下提交。
API 变更
- 没有默认值的记录参数放在具有默认值的记录参数之前。为保持一致性,
Instant
和ZoneOffset
参数始终放在最前面。(Id618c) - 将
HealthConnectClient.getOrCreate#packageNames
重命名为providerPackageNames
。(Id81e4)
错误修复
1.0.0-alpha06 版本
2022年10月5日
已发布 androidx.health.connect:connect-client:1.0.0-alpha06
。1.0.0-alpha06 版本包含以下提交。
错误修复
1.0.0-alpha05 版本
2022年9月21日
已发布 androidx.health.connect:connect-client:1.0.0-alpha05
。1.0.0-alpha05 版本包含以下提交。
API 变更
- 将
Metadata.uid
重命名为Metadata.id
,并在相关的 CRUD API 中一致地使用术语recordId
。(I3d1d2) - 将
PermissionController.createRequestPermissionActivityContract
改为静态方法,而不是实例方法。重命名为PermissionController.createRequestPermissionResultContract
。(Icd2fe) - 为
BloodGlucoseRecord
添加了BloodGlucose
单位类型(I97678) - 将
MenstruationRecord
重命名为MenstruationFlowRecord
。(I3b88e)
错误修复
- 修复了客户端进程未传播前台统计信息的意外行为。(Ifb44c)
1.0.0-alpha04 版本
2022年8月24日 已发布 androidx.health.connect:connect-client:1.0.0-alpha04
。1.0.0-alpha04 版本包含以下提交。
迁移到 `androidx.health.connect`
从 1.0.0-alpha04 开始,androidx.health:health-connect-client
已迁移到 androidx.health.connect:connect-client
。对于 Health Connect 的早期版本,请访问 androidx.health 页面。
要进行迁移,只需将您的依赖项导入从 androidx.health:health-connect-client:1.0.0-alpha03
更改为 androidx.health.connect:connect-client:1.0.0-alpha04
。
新功能
- 包含为 API 调用内置的可选调试日志(链接)
API 变更
- 将 Metadata
clientId
重命名为clientRecordId
,clientVersion
重命名为clientRecordVersion
。(链接) - 使 Metadata uid 更易于读者理解,不再可为空。(链接)
- 在质量单位中添加磅(链接)
- 将
DeletionChange.deleteUid
重命名为 uid(链接) - 将 Permission 重命名为 HealthPermission。这避免了与 Android 框架权限的歧义。(链接)
错误修复