Health Connect
Bản cập nhật mới nhất | Bản phát hành ổn định | Bản phát hành dùng thử | Bản phát hành beta | Bản phát hành alpha |
---|---|---|---|---|
Ngày 15 tháng 1 năm 2025 | - | - | - | 1.1.0-alpha11 |
Yêu cầu quyền đối với loại dữ liệu
Để giúp chúng tôi tăng cường mức độ bảo mật và quyền riêng tư của người dùng, nhà phát triển tích hợp với Health Connect phải khai báo quyền đọc và/hoặc ghi đối với các loại dữ liệu mà ứng dụng của họ sử dụng. Nhà phát triển phải đưa ra các trường hợp sử dụng hợp lệ cho loại dữ liệu mà họ sử dụng dựa trên mục đích của ứng dụng. Để biết thêm thông tin, hãy truy cập vào phần Cung cấp thông tin trên biểu mẫu khai báo Ứng dụng sức khoẻ và Quyền truy cập Health Connect của Android.
Khai báo phần phụ thuộc
Để thêm một phần phụ thuộc trên Health, bạn phải thêm kho lưu trữ Google Maven vào dự án. Đọc nội dung Kho lưu trữ Maven của Google để biết thêm thông tin.
Thêm các phần phụ thuộc cho cấu phần phần mềm bạn cần trong tệp build.gradle
cho ứng dụng hoặc mô-đun:
Groovy
dependencies { // Use to implement health connects implementation "androidx.health.connect:connect-client:1.1.0-alpha08" }
Kotlin
dependencies { // Use to implement health connects implementation("androidx.health.connect:connect-client:1.1.0-alpha08") }
Để biết thêm thông tin về các phần phụ thuộc, hãy xem bài viết Thêm phần phụ thuộc vào bản dựng.
Ý kiến phản hồi
Ý kiến phản hồi của bạn có thể giúp chúng tôi cải thiện Jetpack. Hãy cho chúng tôi biết nếu bạn phát hiện lỗi mới hoặc có ý tưởng cải thiện thư viện này. Vui lòng xem các lỗi hiện có trong thư viện này trước khi báo một lỗi mới. Bạn có thể thêm lượt bình chọn cho lỗi hiện có bằng cách nhấp vào nút dấu sao.
Xem tài liệu về Công cụ theo dõi lỗi để biết thêm thông tin.
Health Connect Testing Phiên bản 1.0
Phiên bản 1.0.0-alpha01
Ngày 4 tháng 9 năm 2024
Phát hành androidx.health.connect:connect-testing:1.0.0-alpha01
. Phiên bản 1.0.0-alpha01 bao gồm các thay đổi sau.
Tính năng mới
Thư viện kiểm thử Health Connect giúp đơn giản hoá việc tạo kiểm thử tự động. Bạn có thể sử dụng thư viện này để xác minh hành vi của ứng dụng và xác thực rằng ứng dụng phản hồi chính xác các trường hợp không phổ biến, khó kiểm thử theo cách thủ công.
Bạn có thể sử dụng thư viện này để tạo các bài kiểm thử đơn vị cục bộ. Các bài kiểm thử này thường xác minh hành vi của các lớp trong ứng dụng tương tác với ứng dụng Health Connect.
Điểm truy cập vào thư viện là lớp FakeHealthConnectClient
mà bạn sử dụng trong các chương trình kiểm thử để thay thế HealthConnectClient
. Thư viện này có các tính năng sau:
- Biểu thị bản ghi trong bộ nhớ để bạn có thể chèn, xoá, xoá và đọc các bản ghi đó
- Tạo mã thông báo thay đổi và theo dõi thay đổi
- Phân trang cho bản ghi và thay đổi
- Hỗ trợ phản hồi tổng hợp bằng các mô-đun giả lập
- Cho phép mọi hàm gửi ngoại lệ
FakePermissionController
có thể dùng để mô phỏng hoạt động kiểm tra quyền
Thay đổi về API
Phiên bản 1.1
Phiên bản 1.1.0-alpha11
Ngày 15 tháng 1 năm 2025
Phát hành androidx.health.connect:connect-client:1.1.0-alpha11
, androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha11
và androidx.health.connect:connect-client-proto:1.1.0-alpha11
. Phiên bản 1.1.0-alpha11 bao gồm các thay đổi sau.
Tính năng mới
- Cập nhật quyền đọc nhật ký và quyền đọc ở chế độ nền để hỗ trợ Android 13 trở xuống.
Thay đổi về API
- Thêm các phương thức nạp chồng đã sửa đổi cùng dòng cho
HealthPermission.getReadPermission
vàHealthPermission.getWritePermission
(I59a2e)
Sửa lỗi
- Xoá các phương thức cấp quyền cũ (Ifd080)
- Thư viện này hiện sử dụng chú giải JSpecify về tính chất rỗng, là loại sử dụng. Nhà phát triển Kotlin nên sử dụng các đối số trình biên dịch sau để thực thi cách sử dụng chính xác:
-Xjspecify-annotations=strict
,-Xtype-enhancement-improvements-strict-mode
(Iaf73a, b/326456246) - Sửa tài liệu cho
HealthPermission.READ_HEALTH_DATA_HISTORY
, cụ thể là bằng cách chỉ ra rằng các lượt đọc không có quyền này chỉ không thành công khi cố gắng đọc một điểm dữ liệu. (Id5b5a)
Phiên bản 1.1.0-alpha10
Ngày 16 tháng 10 năm 2024
Phát hành androidx.health.connect:connect-client:1.1.0-alpha10
, androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha10
và androidx.health.connect:connect-client-proto:1.1.0-alpha10
. Phiên bản 1.1.0-alpha10 bao gồm các thay đổi sau.
Tính năng mới
- Thêm các loại tổng hợp
SkinTemperature
. (Ibe123) - Thêm hằng số
FEATURE_PLANNED_EXERCISE
(Ie02a3) - Thêm quyền Đọc nhật ký. (I5cf41)
- Thêm API Kế hoạch tập luyện (If5be1)
- Thêm API
SkinTemperatureRecord
. (I5605d)
Bản sửa lỗi bảo mật
- Kể từ thay đổi này, androidx sẽ biên dịch dựa trên protobuf 4.28.2 để giải quyết CVE-2024-7254. Nâng cấp phần phụ thuộc trên
androidx.health:connect:connect-client-proto
vàandroidx.health:connect:connect-client-external-protobuf
lên phiên bản 1.1.0-alpha10 mới nhất để giải quyết rủi ro về lỗ hổng.
Phiên bản 1.1.0-alpha09
Ngày 18 tháng 9 năm 2024
Phát hành androidx.health.connect:connect-client:1.1.0-alpha09
, androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha09
và androidx.health.connect:connect-client-proto:1.1.0-alpha09
. Phiên bản 1.1.0-alpha09 bao gồm các thay đổi sau.
Tính năng mới
Phiên bản 1.1.0-alpha08
Ngày 4 tháng 9 năm 2024
Phát hành androidx.health.connect:connect-client:1.1.0-alpha08
, androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha08
và androidx.health.connect:connect-client-proto:1.1.0-alpha08
. Phiên bản 1.1.0-alpha08 bao gồm các thay đổi sau.
Thay đổi về API
- Đặt giá trị mặc định cho biến tính năng trong
HealthConnectClient
. (I788dc) - Thêm một API để kiểm tra phạm vi cung cấp tính năng. (Iedd43)
Sửa lỗi
- Trả về
SDK_UNAVAILABLE
trongHealthConnectClient.getSdkStatus()
khiHealthConnectManager
là giá trị rỗng trong U+ 5802f - Thêm các chế độ ghi đè
toString
vàoRecordClasses
aa5dc - Xoá phần trình bày quyền truy cập vào API nền tảng mới theo cách thủ công vì việc này diễn ra tự động thông qua tính năng tạo mô hình API khi sử dụng R8 với AGP 7.3 trở lên (ví dụ: R8 phiên bản 3.3) và cho tất cả các bản dựng khi sử dụng AGP 8.1 trở lên (ví dụ: D8 phiên bản 8.1). Những ứng dụng không sử dụng AGP nên cập nhật lên D8 phiên bản 8.1 trở lên. Hãy xem bài viết này để biết thêm thông tin. (If6b4c, b/345472586)
Phiên bản 1.1.0-alpha07
Ngày 10 tháng 1 năm 2024
Phát hành androidx.health.connect:connect-client:1.1.0-alpha07
. Phiên bản 1.1.0-alpha07 bao gồm các thay đổi sau.
Thay đổi về API
- Trả về
SDK_UNAVAILABLE
khi#getSdkStatus
được gọi từ ngữ cảnh người dùng hồ sơ. (I91df3) - Xoá
SleepStageRecord
. (/If6ada)
Sửa lỗi
- Gửi
RemoteException
thay vìIllegalStateException
khi liên kết không thành công. (Id2233)
Phiên bản 1.1.0-alpha06
Ngày 18 tháng 10 năm 2023
Phát hành androidx.health.connect:connect-client:1.1.0-alpha06
. Phiên bản 1.1.0-alpha06 bao gồm các thay đổi sau.
Thay đổi về API
- Công khai các định nghĩa
recordingMethod
. (I401fb)
Sửa lỗi
- Thêm tài liệu vào tuyến đường tập thể dục, chỉ định vị trí đó phải trước thời gian kết thúc phiên. (0e51e6)
Phiên bản 1.1.0-alpha05
Ngày 4 tháng 10 năm 2023
Phát hành androidx.health.connect:connect-client:1.1.0-alpha05
. Phiên bản 1.1.0-alpha05 bao gồm các thay đổi sau.
Thay đổi về API
- Thêm ý định điều hướng đến màn hình quản lý dữ liệu của Health Connect. (Ibf591)
- Xoá các phương thức không dùng nữa trong
AggregationResult
. (Idbda9) - Thêm API tiện lợi để tạo
ReadRecordsRequest
, cũng như xoá và đọc bản ghi, bằng loại bản ghi được tái hiện. (If58a5)
Sửa lỗi
- Khắc phục lỗi trong Android 14, trong đó các trường dinh dưỡng rỗng được trả về dưới dạng
Double.MIN_VALUE
. (1aa1d1) - Khắc phục lỗi trong Android 14, trong đó tính năng tổng hợp theo khoảng thời gian hằng tháng/hằng năm đã gửi một ngoại lệ trong phản hồi do các bộ chứa có cùng thời gian bắt đầu/kết thúc. (281313)
Phiên bản 1.1.0-alpha04
Ngày 6 tháng 9 năm 2023
Phát hành androidx.health.connect:connect-client:1.1.0-alpha04
. Phiên bản 1.1.0-alpha04 bao gồm các thay đổi sau.
Thay đổi về API
- Chỉ Java: đổi tên trường
getHasMore()
trênChangesResponse
thànhhasMore()
. (I80695) - Điều chỉnh hoạt động kiểm tra
HealthPermissionsRequestContract#createIntent
trên các phiên bản Android. Hợp đồng kiểm tra để đảm bảo tất cả quyền đều là quyền liên quan đến sức khoẻ. (I143fc)
Sửa lỗi
- Khắc phục ngoại lệ được gửi khi
ExerciseSessionRecord
được tạo bằngExerciseRoute
chứa danh sách vị trí trống. (I45c16) - Cập nhật tài liệu và mã mẫu
SleepSessionRecord
để đọc các phiên giấc ngủ. (Idf0de)
Phiên bản 1.1.0-alpha03
Ngày 26 tháng 7 năm 2023
Phát hành androidx.health.connect:connect-client:1.1.0-alpha03
. Phiên bản 1.1.0-alpha03 bao gồm các thay đổi sau.
Tính năng mới
- API để đọc và ghi các tuyến đường Tập thể dục:
- Đã thêm
ExerciseRouteResult
vàoExerciseSessionRecord
- Thêm
ExerciseRouteRequestContract
- Đã thêm
Thay đổi về API
- Thêm
ExerciseRouteResult
và các lớp con của lớp này:Data
,NoData
vàConsentRequiredStates
. - Thêm
ExerciseRoute
dưới dạng một lớp độc lập, lưu giữ dữ liệu vị trí cho tuyến đường. (I22eed) - Thêm
PERMISSION_WRITE_EXERCISE_ROUTE
. (I92fc4) - Thêm
ExerciseRouteRequestContract
, thêmHealthPermissionsRequestContract
. (Ief0e5)
Sửa lỗi
- Sửa lỗi xây dựng Năng lượng tính bằng kilojoule (Ie8791)
Phiên bản 1.1.0-alpha02
Ngày 21 tháng 6 năm 2023
Phát hành androidx.health.connect:connect-client:1.1.0-alpha02
. Phiên bản 1.1.0-alpha02 bao gồm các thay đổi sau.
Sửa lỗi
- Khắc phục lỗi rò rỉ
HealthDataSdkService
(Ia3ba5) - Luôn chuyển hướng đến Ứng dụng
HealthConnect
phù hợp khi yêu cầu quyền trên Android U.(I6415a)
Phiên bản 1.1.0-alpha01
Ngày 7 tháng 6 năm 2023
Phát hành androidx.health.connect:connect-client:1.1.0-alpha01
. Phiên bản này được phát triển trong một nhánh nội bộ.
Tính năng mới
- Hỗ trợ phiên bản khung Android 14 của Health Connect. SDK này là điều kiện tiên quyết cho Android 14. Nếu không có API này, ứng dụng sẽ không thể tích hợp với Health Connect trên Android 14.
- Thêm phương thức ghi để ghi siêu dữ liệu.
Thay đổi về API
- Các thay đổi về Session API:
- Thêm nhiều giai đoạn ngủ vào
SleepSessionRecord
và xoáSleepStageRecord
. - Thêm
ExerciseLap
vàExerciseSegment
vàoExerciseSessionRecord
.
- Thêm nhiều giai đoạn ngủ vào
- Giới hạn tần suất định kỳ và hằng ngày (bao gồm cả giới hạn bộ nhớ) đối với các thao tác đọc, nhật ký thay đổi, chèn và xoá.
- Thêm tính năng xác thực cho tất cả các trường
NutritionRecord
. - Thêm tính năng xác thực cho
HeartRateVariabilityRmssdRecord
. - Xoá hai API không dùng nữa:
HealthConnectClient#isProviderAvailable
vàHealthConnectClient#isApiSupported
.
Sửa lỗi
- Sửa tính bằng nhau của các đơn vị cho tất cả các loại đơn vị, tính bằng nhau không còn phụ thuộc vào loại được dùng để khởi chạy đơn vị. Ví dụ: Mass.grams(1000) hiện bằng Mass.kilograms(1).
Phiên bản 1.0
Phiên bản 1.0.0-alpha11
Ngày 22 tháng 2 năm 2023
Phát hành androidx.health.connect:connect-client:1.0.0-alpha11
. Phiên bản 1.0.0-alpha11 bao gồm các thay đổi sau.
Các thay đổi về API
- Thêm ý định dùng để mở Health Connect. (Ic8055)
- Xoá một số loại bài tập thể dục. Hãy sử dụng
EXERCISE_TYPE_STRENGTH_TRAINING
,EXERCISE_TYPE_HIGH_INTENSITY_INTERVAL_TRAINING
hoặcEXERCISE_TYPE_CALISTHENICS
thay cho các loại đã xoá. (I7291c) - Thêm API
sdkStatus()
mới kết hợp 2 APIisSdkSupported()
vàisProviderAvailable()
hiện không còn được dùng nữa. (Iac89d) - Thay đổi các API dùng
providerPackageName
để chấp nhận một chuỗi thay vì danh sách. (I67e0f)
Phiên bản 1.0.0-alpha10
Ngày 25 tháng 1 năm 2023
Phát hành androidx.health.connect:connect-client:1.0.0-alpha10
. Phiên bản 1.0.0-alpha10 bao gồm các thay đổi sau.
Các thay đổi về API
ExerciseEventRecord
,ExerciseLapRecord
,ExerciseRepititionRecord
vàSwimmingStrokesRecord
không còn được hỗ trợ dưới dạngRecordTypes
. Chúng không thể được ghi hoặc đọc từHealthConnect
nữa. Hãy xoá mọi tham chiếu đến các loại dữ liệu này khỏi quá trình tích hợpHealthConnect
. (If7ca2)- Các thay đổi trong các API quyền để chấp nhận quyền ở định dạng mới dựa trên chuỗi. Sự thay đổi này cũng yêu cầu thay đổi khai báo quyền sang định dạng quyền Android tiêu chuẩn. (Ib0a2f)
Phiên bản 1.0.0-alpha09
Ngày 11 tháng 1 năm 2023
Phát hành androidx.health.connect:connect-client:1.0.0-alpha09
. Phiên bản 1.0.0-alpha09 bao gồm các thay đổi sau.
Tính năng mới
- Thêm 2 loại dữ liệu mới về sức khoẻ nữ giới cho Health Connect:
IntermenstrualBleedingRecord
vàMenstruationPeriodRecord
.MenstruationFlow.ENUMs
có các thuộc tính là Ít, Trung bình, Nhiều và Không xác định.
Các thay đổi về API
Phiên bản 1.0.0-alpha08
Ngày 7 tháng 12 năm 2022
Phát hành androidx.health.connect:connect-client:1.0.0-alpha08
. Phiên bản 1.0.0-alpha08 bao gồm các thay đổi sau.
Các thay đổi về API
- Thêm
BodyWaterMass
,HeartRateVariabilityRmssdRecord
ở dạng Loại bản ghi mới được hỗ trợ. (Ifd58f) - Xoá
HipCircumferenceRecord
,WaistCircumferenceRecord
ở dạngRecordTypes
được hỗ trợ. (I62fb9) - Thay đổi
MenstruationFlowRecord.flow
từstringdef
thànhintdefs
. (I0369f) - Thay đổi các trường Ghi giống enum với
Strings
thànhIntegers
để cải thiện hiệu suất. (I3b295) - Thay đổi kiểu của các trường giống enum là
ExerciseSession
,ExerciseRepetitions
,SleepStage
từ chuỗi thành số nguyên. (Id32a9) - Đổi tên
ExerciseSessionRecord.ACTIVE_TIME_TOTAL->EXERCISE_DURATION_TOTAL
. (I5d7bd) - Thêm "Unusual" (Bất thường) vào enum
CervicalMucus
. Đổi tên "Clear" (Xoá sạch) thành "Eggwhite" để tăng tính rõ ràng. Thay đổiCervicalMucus#appearance
và #sensation từStringDefs
thành IntDefs. (I3ac51) StringDef
của enumDeviceTypes
giờ được chuyển vàoIntDefs
trong phần Thiết bị. (I3abf3)- Thêm
HealthConnectClient.isApiSupported()
, có tác dụng trả về giá trị false trên các phiên bản SDK không có cách triển khai tương thích. Đổi tênHealthConnectClient.isAvailable->isProviderAvailable
. (I3674e)
Sửa lỗi
- Không cho phép các giá trị
HeartRate beatsPerMinute
nhỏ hơn 1 (I6052f) - Thêm chú thích
@JvmDefaultWithCompatibility
(I8f206)
Phiên bản 1.0.0-alpha07
Ngày 24 tháng 10 năm 2022
Phát hành androidx.health.connect:connect-client:1.0.0-alpha07
. Phiên bản 1.0.0-alpha07 bao gồm các thay đổi sau.
Các thay đổi về API
- Các đối số ghi không có giá trị mặc định được đặt trước các đối số có giá trị mặc định. Để đảm bảo tính nhất quán, các đối số
Instant
vàZoneOffset
luôn được đặt ngay từ đầu. (Id618c) - Đổi tên
HealthConnectClient.getOrCreate#packageNames
thànhproviderPackageNames
. (Id81e4)
Sửa lỗi
- Thêm xác thực giá trị trường Record (Ghi). Các giá trị cực kỳ sai sẽ gửi
IllegalArgumentExceptions
khi giá trị được cung cấp nằm ngoài giới hạn hợp lý. (Ie171d) - Xác thực thời gian bắt đầu ghi trước thời gian kết thúc khi phù hợp. (I02460)
Phiên bản 1.0.0-alpha06
Ngày 5 tháng 10 năm 2022
Phát hành androidx.health.connect:connect-client:1.0.0-alpha06
. Phiên bản 1.0.0-alpha06 bao gồm các thay đổi sau.
Sửa lỗi
- Cải thiện vòng đời của kết nối của dịch vụ. (If2bd5)
- Khắc phục lỗi NPE khi ngoại lệ tăng lên trong kết nối dịch vụ. (I13546)
Phiên bản 1.0.0-alpha05
Ngày 21 tháng 9 năm 2022
Phát hành androidx.health.connect:connect-client:1.0.0-alpha05
. Phiên bản 1.0.0-alpha05 bao gồm các thay đổi sau.
Các thay đổi về API
- Đổi tên
Metadata.uid
->Metadata.id
và sử dụng thuật ngữrecordId
một cách nhất quán trong các API CRUD có liên quan. (I3d1d2) - Đặt
PermissionController.createRequestPermissionActivityContract
làm phương thức tĩnh thay vì phương thức thực thể. Đổi tên thànhPermissionController.createRequestPermissionResultContract
. (Icd2fe) - Thêm loại đơn vị
BloodGlucose
choBloodGlucoseRecord
(I97678) - Đổi tên
MenstruationRecord
->MenstruationFlowRecord
. (I3b88e)
Sửa lỗi
- Khắc phục hành vi ngoài mong muốn không lan truyền số liệu thống kê ở nền trước theo quy trình của ứng dụng khách. (Ifb44c)
Phiên bản 1.0.0-alpha04
Ngày 24 tháng 8 năm 2022 phát hành
androidx.health.connect:connect-client:1.0.0-alpha04
. Phiên bản 1.0.0-alpha04 bao gồm các thay đổi sau.
Di chuyển sang `androidx.health.connect
Kể từ phiên bản 1.0.0-alpha04, androidx.health:health-connect-client
đã được chuyển sang androidx.health.connect:connect-client
. Để xem các phiên bản Health Connect trước, vui lòng truy cập trang androidx.health.
Để di chuyển, thay vì nhập phần phụ thuộc từ androidx.health:health-connect-client:1.0.0-alpha03
, bạn chỉ cần chuyển thành androidx.health.connect:connect-client:1.0.0-alpha04
.
Tính năng mới
- Cung cấp nhật ký gỡ lỗi (không bắt buộc) có sẵn cho lệnh gọi API (đường liên kết)
Các thay đổi về API
- Đổi tên Metadata.
clientId
thànhclientRecordId
, Metadata.clientVersion
thànhclientRecordVersion
. (đường liên kết) - Cải tiến để Metadata.uid thân thiện hơn với trình đọc và không còn giá trị rỗng. (đường liên kết)
- Thêm pound vào đơn vị Khối lượng (đường liên kết)
- Đổi tên
DeletionChange.deleteUid
thành uid (đường liên kết) - Đổi tên Permission thành HealthPermission. Điều này giúp tránh tình trạng không rõ ràng về các quyền của Khung Android. (đường liên kết)
Sửa lỗi
- Sửa lỗi hồi quy ở đơn vị calo không chính xác của Năng lượng (đường liên kết)
- Sửa lỗi hồi quy ở quá trình tổng hợp cho một số loại bản ghi (đường liên kết)