Android 14中HealthConnect插入记录抛出Conflict异常求助
Android 14 HealthConnect 插入记录时出现 "Conflict found, but couldn't read the entry" 异常
问题详情
在Android 14上测试HealthConnect集成,插入体重、饮水量或营养记录时抛出以下异常:
Caused by: android.health.connect.HealthConnectException: android.health.connect.HealthConnectException: Conflict found, but couldn't read the entry. at android.health.connect.aidl.HealthConnectExceptionParcel$1.createFromParcel(HealthConnectExceptionParcel.java:33) at android.health.connect.aidl.HealthConnectExceptionParcel$1.createFromParcel(HealthConnectExceptionParcel.java:29) at android.os.Parcel.readTypedObject(Parcel.java:4055) at android.health.connect.aidl.IInsertRecordsResponseCallback$Stub.onTransact(IInsertRecordsResponseCallback.java:106) at android.os.Binder.execTransactInternal(Binder.java:1392) at android.os.Binder.execTransact(Binder.java:1299)
相同代码在Android 13(HealthConnect为独立应用)上运行正常。已确认:
- SDK状态可用
WRITE_WEIGHT权限已授予- 依赖版本为
androidx.health.connect:connect-client:1.1.0-alpha07 - AndroidManifest.xml配置正确
修改应用包名后可成功插入记录,推测是HealthConnect缓存了该包名的数据导致冲突。
最小复现代码:
val time = ZonedDateTime.parse("2024-03-16T00:00:00+02:00[Europe/Sofia]") val r = WeightRecord( time = time.toInstant(), zoneOffset = time.offset, weight = 60.kilograms, metadata = Metadata( clientRecordId = "weight_dummy_id", clientRecordVersion = 0 ) ) healthConnectClient.insertRecords(listOf(r)) // 抛出异常
排查与解决方案
- 清理HealthConnect应用数据
进入系统设置 → 应用 → 找到HealthConnect → 存储 → 删除数据。注意此操作会清除设备上所有HealthConnect关联数据,测试前请备份重要信息。 - 更新
clientRecordVersion值
冲突通常源于使用相同clientRecordId但版本号未更新。将clientRecordVersion从0改为递增数值(如1),确保每次插入/更新记录时版本号唯一且递增。 - 改用
updateRecords处理冲突
若需保留原有clientRecordId,可使用updateRecords替代insertRecords,明确处理冲突场景:val updateRequest = UpdateRecordsRequest( recordsToUpdate = listOf(r), updateType = UpdateRecordsRequest.UpdateType.REPLACE_EXISTING ) healthConnectClient.updateRecords(updateRequest) - 升级HealthConnect客户端依赖
当前使用的是预览版依赖,尝试升级至最新稳定版(如1.1.0或更高),可能已修复Android 14上的兼容性问题。 - 重置应用与HealthConnect的关联
在HealthConnect设置中找到你的应用,取消所有权限授权后重新授权,再尝试插入记录。
内容的提问来源于stack exchange,提问作者NewestUser
相关产品推荐
相关产品推荐

