Health Connect

  
Memungkinkan developer membaca atau menulis catatan kesehatan dan kebugaran pengguna.
Update Terbaru Rilis Stabil Kandidat Rilis Rilis Beta Rilis Alfa
15 Januari 2025 - - - 1.1.0-alpha11

Meminta akses ke jenis data

Untuk membantu kami memperkuat privasi dan keamanan pengguna, developer yang berintegrasi dengan Health Connect harus mendeklarasikan akses baca dan/atau tulis untuk jenis data yang digunakan aplikasi mereka. Developer harus menyertakan kasus penggunaan yang valid untuk jenis data yang mereka gunakan berdasarkan tujuan aplikasi. Untuk informasi selengkapnya, buka Memberikan informasi untuk formulir pernyataan aplikasi Kesehatan dan Izin Health Connect dari Android.

Mendeklarasikan dependensi

Untuk menambahkan dependensi pada Health, Anda harus menambahkan repositori Maven Google ke project Anda. Baca repositori Maven Google untuk mengetahui informasi selengkapnya.

Tambahkan dependensi untuk artefak yang diperlukan dalam file build.gradle bagi aplikasi atau modul Anda:

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")
}

Untuk informasi dependensi selengkapnya, lihat Menambahkan dependensi build.

Masukan

Masukan Anda membantu meningkatkan kualitas Jetpack. Beri tahu kami jika Anda menemukan masalah baru atau mempunyai masukan untuk meningkatkan kualitas library ini. Harap periksa masalah yang sudah diketahui dalam library ini sebelum membuat laporan baru. Anda dapat memberikan suara untuk masalah yang sudah diketahui dengan mengklik tombol bintang.

Laporkan masalah baru

Lihat dokumentasi Issue Tracker untuk informasi selengkapnya.

Pengujian Health Connect Versi 1.0

Versi 1.0.0-alpha01

4 September 2024

androidx.health.connect:connect-testing:1.0.0-alpha01 dirilis. Versi 1.0.0-alpha01 berisi commit ini.

Fitur Baru

Library Pengujian Health Connect menyederhanakan pembuatan pengujian otomatis. Anda dapat menggunakan library ini untuk memverifikasi perilaku aplikasi dan memvalidasi bahwa aplikasi merespons dengan benar terhadap kasus yang tidak umum, yang sulit diuji secara manual.

Anda dapat menggunakan library untuk membuat pengujian unit lokal, yang biasanya memverifikasi perilaku class di aplikasi Anda yang berinteraksi dengan klien Health Connect.

Titik entri ke library adalah class FakeHealthConnectClient, yang Anda gunakan dalam pengujian untuk mengganti HealthConnectClient. Fitur-fiturnya adalah sebagai berikut:

  • Representasi data dalam memori, sehingga Anda dapat menyisipkan, menghapus, menghapus, dan membacanya
  • Pembuatan token perubahan dan pelacakan perubahan
  • Pengelompokan halaman untuk kumpulan data dan perubahan
  • Respons agregasi didukung dengan stub
  • Mengizinkan fungsi apa pun untuk menampilkan pengecualian
  • FakePermissionController yang dapat digunakan untuk mengemulasi pemeriksaan izin

Perubahan API

  • Menambahkan FakeHealthConnectClient e8469
  • Menambahkan penggantian Stub untuk FakeHealthConnectClient e8469

Versi 1.1

Versi 1.1.0-alpha11

15 Januari 2025

androidx.health.connect:connect-client:1.1.0-alpha11, androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha11, dan androidx.health.connect:connect-client-proto:1.1.0-alpha11 dirilis. Versi 1.1.0-alpha11 berisi commit ini.

Fitur Baru

  • Memperbarui izin baca latar belakang dan histori untuk mendukung Android 13 dan yang lebih lama.

Perubahan API

  • Menambahkan overload reified inline untuk HealthPermission.getReadPermission dan HealthPermission.getWritePermission (I59a2e)

Perbaikan Bug

  • Menghapus metode izin lama (Ifd080)
  • Library ini kini menggunakan anotasi nullness JSpecify, yang merupakan penggunaan jenis. Developer Kotlin harus menggunakan argumen compiler berikut untuk menerapkan penggunaan yang benar: -Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode (Iaf73a, b/326456246)
  • Memperbaiki dokumentasi untuk HealthPermission.READ_HEALTH_DATA_HISTORY, khususnya dengan menunjukkan bahwa operasi baca tanpa izin ini hanya gagal saat mencoba membaca satu titik data. (Id5b5a)

Versi 1.1.0-alpha10

16 Oktober 2024

androidx.health.connect:connect-client:1.1.0-alpha10, androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha10, dan androidx.health.connect:connect-client-proto:1.1.0-alpha10 dirilis. Versi 1.1.0-alpha10 berisi commit ini.

Fitur Baru

  • Menambahkan jenis agregasi SkinTemperature. (Ibe123)
  • Menambahkan konstanta FEATURE_PLANNED_EXERCISE (Ie02a3)
  • Menambahkan izin History Reads. (I5cf41)
  • Menambahkan Training plans API (If5be1)
  • Menambahkan SkinTemperatureRecord API. (I5605d)

Perbaikan Keamanan

  • Mulai perubahan ini, androidx dikompilasi dengan protobuf 4.28.2 untuk mengatasi CVE-2024-7254. Upgrade dependensi Anda pada androidx.health:connect:connect-client-proto dan androidx.health:connect:connect-client-external-protobuf ke versi 1.1.0-alpha10 terbaru untuk mengatasi risiko kerentanan.

Versi 1.1.0-alpha09

18 September 2024

androidx.health.connect:connect-client:1.1.0-alpha09, androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha09, dan androidx.health.connect:connect-client-proto:1.1.0-alpha09 dirilis. Versi 1.1.0-alpha09 berisi commit ini.

Fitur Baru

  • Menambahkan izin pembacaan latar belakang, yang dilindungi oleh ketersediaan fitur. (I01036, I44db9)

Versi 1.1.0-alpha08

4 September 2024

androidx.health.connect:connect-client:1.1.0-alpha08, androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha08, dan androidx.health.connect:connect-client-proto:1.1.0-alpha08 dirilis. Versi 1.1.0-alpha08 berisi commit ini.

Perubahan API

  • Tetapkan nilai default untuk variabel fitur di HealthConnectClient. (I788dc)
  • Menambahkan API untuk memeriksa ketersediaan fitur. (Iedd43)

Perbaikan Bug

  • Menampilkan SDK_UNAVAILABLE di HealthConnectClient.getSdkStatus() jika HealthConnectManager null di U+ 5802f
  • Menambahkan penggantian toString ke RecordClasses aa5dc
  • Menghapus garis besar manual akses ke API platform baru karena hal ini terjadi secara otomatis melalui pemodelan API saat menggunakan R8 dengan AGP 7.3 atau yang lebih baru (misalnya, R8 versi 3.3) dan untuk semua build saat menggunakan AGP 8.1 atau yang lebih baru (misalnya, D8 versi 8.1). Klien yang tidak menggunakan AGP disarankan untuk mengupdate ke D8 versi 8.1 atau yang lebih baru. Baca artikel ini untuk informasi selengkapnya. (If6b4c, b/345472586)

Versi 1.1.0-alpha07

10 Januari 2024

androidx.health.connect:connect-client:1.1.0-alpha07 dirilis. Versi 1.1.0-alpha07 berisi commit ini.

Perubahan API

  • Menampilkan SDK_UNAVAILABLE saat #getSdkStatus dipanggil dari konteks pengguna profil. (I91df3)
  • Menghapus SleepStageRecord. (/If6ada)

Perbaikan Bug

  • Tampilkan RemoteException, bukan IllegalStateException, saat terjadi kegagalan binding. (Id2233)

Versi 1.1.0-alpha06

18 Oktober 2023

androidx.health.connect:connect-client:1.1.0-alpha06 dirilis. Versi 1.1.0-alpha06 berisi commit ini.

Perubahan API

  • Membuat definisi recordingMethod bersifat publik. (I401fb)

Perbaikan Bug

  • Menambahkan dokumentasi ke rute olahraga yang menentukan bahwa lokasi harus sebelum waktu akhir sesi. (0e51e6)

Versi 1.1.0-alpha05

4 Oktober 2023

androidx.health.connect:connect-client:1.1.0-alpha05 dirilis. Versi 1.1.0-alpha05 berisi commit ini.

Perubahan API

  • Menambahkan intent yang membuka layar pengelolaan data health connect. (Ibf591)
  • Menghapus metode yang tidak digunakan lagi di AggregationResult. (Idbda9)
  • Menambahkan API praktis untuk membuat ReadRecordsRequest, serta menghapus dan membaca data, dengan jenis data yang direifikasi. (If58a5)

Perbaikan Bug

  • Memperbaiki bug di Android 14 saat kolom nutrisi null ditampilkan sebagai Double.MIN_VALUE. (1aa1d1)
  • Memperbaiki bug di Android 14 saat agregasi menurut periode Bulanan/Tahunan menampilkan pengecualian dalam respons karena bucket memiliki waktu mulai/selesai yang sama. (281313)

Versi 1.1.0-alpha04

6 September 2023

androidx.health.connect:connect-client:1.1.0-alpha04 dirilis. Versi 1.1.0-alpha04 berisi commit ini.

Perubahan API

Perbaikan Bug

Versi 1.1.0-alpha03

26 Juli 2023

androidx.health.connect:connect-client:1.1.0-alpha03 dirilis. Versi 1.1.0-alpha03 berisi commit ini.

Fitur Baru

  • API untuk membaca dan menulis rute Olahraga:
    • ExerciseRouteResult ditambahkan ke ExerciseSessionRecord
    • Menambahkan ExerciseRouteRequestContract

Perubahan API

  • Menambahkan ExerciseRouteResult dan subclass-nya: Data, NoData, dan ConsentRequiredStates.
  • Menambahkan ExerciseRoute sebagai class mandiri, yang menyimpan data lokasi untuk rute. (I22eed)
  • PERMISSION_WRITE_EXERCISE_ROUTE ditambahkan. (I92fc4)
  • Menambahkan ExerciseRouteRequestContract, menambahkan HealthPermissionsRequestContract. (Ief0e5)

Perbaikan Bug

  • Memperbaiki konstruksi Energi dalam kilojoule (Ie8791)

Versi 1.1.0-alpha02

21 Juni 2023

androidx.health.connect:connect-client:1.1.0-alpha02 dirilis. Versi 1.1.0-alpha02 berisi commit berikut ini.

Perbaikan Bug

  • Memperbaiki kebocoran HealthDataSdkService (Ia3ba5)
  • Selalu mengalihkan ke Klien HealthConnect yang tepat saat meminta izin di Android U.(I6415a)

Versi 1.1.0-alpha01

7 Juni 2023

androidx.health.connect:connect-client:1.1.0-alpha01 dirilis. Versi ini dikembangkan di cabang internal.

Fitur Baru

  • Dukungan untuk Health Connect versi framework Android 14. SDK ini merupakan prasyarat untuk Android 14. Aplikasi tidak akan dapat berintegrasi dengan Health Connect di Android 14 tanpanya.
  • Menambahkan metode perekaman untuk merekam metadata.

Perubahan API

  • Perubahan Session API:
    • Menambahkan berbagai tahapan tidur ke SleepSessionRecord dan menghapus SleepStageRecord.
    • Menambahkan ExerciseLap dan ExerciseSegment ke dalam ExerciseSessionRecord.
  • Batas kapasitas berkala dan harian (termasuk batas memori), untuk operasi baca, log perubahan, penyisipan, dan penghapusan.
  • Menambahkan validasi untuk semua kolom NutritionRecord.
  • Menambahkan validasi untuk HeartRateVariabilityRmssdRecord.
  • Menghapus dua API yang tidak digunakan lagi: HealthConnectClient#isProviderAvailable dan HealthConnectClient#isApiSupported.

Perbaikan Bug

  • Kesetaraan unit tetap untuk semua jenis unit, kesetaraan tidak lagi bergantung pada jenis yang digunakan untuk inisialisasi unit. Misalnya, Mass.grams(1000) kini sama dengan Mass.kilograms(1).

Versi 1.0

Versi 1.0.0-alpha11

22 Februari 2023

androidx.health.connect:connect-client:1.0.0-alpha11 dirilis. Versi 1.0.0-alpha11 berisi commit ini.

Perubahan API

  • Menambahkan intent yang akan digunakan untuk membuka Health Connect. (Ic8055)
  • Menghapus beberapa jenis olahraga. Gunakan EXERCISE_TYPE_STRENGTH_TRAINING, EXERCISE_TYPE_HIGH_INTENSITY_INTERVAL_TRAINING, atau EXERCISE_TYPE_CALISTHENICS sebagai pengganti jenis yang dihapus. (I7291c)
  • Menambahkan API baru sdkStatus() yang menggabungkan dua API yang kini tidak digunakan lagi, yaitu isSdkSupported() dan isProviderAvailable(). (Iac89d)
  • Mengubah API yang menerima providerPackageName untuk menerima satu string, bukan daftar. (I67e0f)

Versi 1.0.0-alpha10

25 Januari 2023

androidx.health.connect:connect-client:1.0.0-alpha10 dirilis. Versi 1.0.0-alpha10 berisi commit ini.

Perubahan API

  • ExerciseEventRecord, ExerciseLapRecord, ExerciseRepititionRecord, dan SwimmingStrokesRecord tidak lagi didukung sebagai RecordTypes. Jenis data tersebut tidak dapat lagi ditulis atau dibaca dari HealthConnect. Hapus semua referensi ke jenis data ini dari integrasi HealthConnect. (If7ca2)
  • Perubahan pada API izin untuk menerima izin dalam format berbasis string baru. Perubahan ini juga memerlukan perubahan pernyataan izin ke format izin Android standar. (Ib0a2f)

Versi 1.0.0-alpha09

11 Januari 2023

androidx.health.connect:connect-client:1.0.0-alpha09 dirilis. Versi 1.0.0-alpha09 berisi commit berikut ini.

Fitur Baru

  • Menambahkan 2 jenis data kesehatan perempuan baru untuk Health Connect: IntermenstrualBleedingRecord, dan MenstruationPeriodRecord. MenstruationFlow.ENUMs adalah Ringan, Sedang, Berat, dan Tidak Diketahui.

Perubahan API

  • Menambahkan IntermenstrualBleedingRecord (Idc470)
  • Menambahkan jenis data MenstruationPeriodRecord (Iea545)

Versi 1.0.0-alpha08

7 Desember 2022

androidx.health.connect:connect-client:1.0.0-alpha08 dirilis. Versi 1.0.0-alpha08 berisi commit ini.

Perubahan API

  • Menambahkan BodyWaterMass, HeartRateVariabilityRmssdRecord sebagai Jenis Data baru yang didukung. (Ifd58f)
  • Menghapus HipCircumferenceRecord, WaistCircumferenceRecord sebagai RecordTypes yang didukung. (I62fb9)
  • Mengubah MenstruationFlowRecord.flow dari stringdef menjadi intdefs. (I0369f)
  • Mengubah kolom Record mirip enum dengan Strings menjadi Integers untuk performa yang lebih baik. (I3b295)
  • Mengubah kolom mirip enum ExerciseSession, ExerciseRepetitions, SleepStage dari string menjadi jenis integer. (Id32a9)
  • Mengganti nama ExerciseSessionRecord.ACTIVE_TIME_TOTAL->EXERCISE_DURATION_TOTAL. (I5d7bd)
  • Menambahkan "Unusual" ke enum CervicalMucus. Mengganti nama "Clear" menjadi "Eggwhite" untuk kekhususan lainnya. Mengubah CervicalMucus#appearance dan #sensation dari StringDefs menjadi IntDefs. (I3ac51)
  • StringDef dari enum DeviceTypes kini dipindahkan ke IntDefs di bagian Perangkat. (I3abf3)
  • Menambahkan HealthConnectClient.isApiSupported(), yang menampilkan nilai salah (false) di versi SDK tanpa implementasi yang kompatibel. Mengganti nama HealthConnectClient.isAvailable->isProviderAvailable. (I3674e)

Perbaikan Bug

  • Melarang nilai HeartRate beatsPerMinute kurang dari 1 (I6052f)
  • Menambahkan anotasi @JvmDefaultWithCompatibility (I8f206)

Versi 1.0.0-alpha07

24 Oktober 2022

androidx.health.connect:connect-client:1.0.0-alpha07 dirilis. Versi 1.0.0-alpha07 berisi commit ini.

Perubahan API

  • Argumen perekaman tanpa nilai default ditempatkan sebelum argumen dengan nilai default. Untuk konsistensi, argumen Instant dan ZoneOffset selalu ditempatkan di awal. (Id618c)
  • Mengganti nama HealthConnectClient.getOrCreate#packageNames menjadi providerPackageNames. (Id81e4)

Perbaikan Bug

  • Menambahkan validasi nilai kolom Record. Nilai yang sangat salah akan menampilkan IllegalArgumentExceptions jika nilai yang diberikan di luar batas yang wajar. (Ie171d)
  • Memvalidasi waktu mulai perekaman sebelum waktu berakhir jika relevan. (I02460)

Versi 1.0.0-alpha06

5 Oktober 2022

androidx.health.connect:connect-client:1.0.0-alpha06 dirilis. Versi 1.0.0-alpha06 berisi commit ini.

Perbaikan Bug

  • Meningkatkan siklus proses koneksi layanan. (If2bd5)
  • Memperbaiki bug error NPE saat pengecualian muncul dalam koneksi layanan. (I13546)

Versi 1.0.0-alpha05

21 September 2022

androidx.health.connect:connect-client:1.0.0-alpha05 dirilis. Versi 1.0.0-alpha05 berisi commit ini.

Perubahan API

  • Mengganti nama Metadata.uid -> Metadata.id dan menggunakan terminologi recordId secara konsisten di seluruh API CRUD terkait. (I3d1d2)
  • Membuat PermissionController.createRequestPermissionActivityContract sebagai metode statis, bukan metode instance. Mengganti namanya menjadi PermissionController.createRequestPermissionResultContract. (Icd2fe)
  • Menambahkan jenis unit BloodGlucose untuk BloodGlucoseRecord (I97678)
  • Mengganti nama MenstruationRecord -> MenstruationFlowRecord. (I3b88e)

Perbaikan Bug

  • Memperbaiki perilaku yang tidak diinginkan yang tidak melakukan propagasi statistik latar depan dari proses klien. (Ifb44c)

Versi 1.0.0-alpha04

24 Agustus 2022 androidx.health.connect:connect-client:1.0.0-alpha04 dirilis. Versi 1.0.0-alpha04 berisi commit ini.

Migrasi ke `androidx.health.connect

Mulai versi 1.0.0-alpha04, androidx.health:health-connect-client dimigrasikan ke androidx.health.connect:connect-client. Untuk Health Connect versi sebelumnya, buka halaman androidx.health.

Untuk melakukan migrasi, cukup ubah impor dependensi dari androidx.health:health-connect-client:1.0.0-alpha03 ke androidx.health.connect:connect-client:1.0.0-alpha04.

Fitur Baru

  • Menyertakan log debug opsional yang dibuat untuk panggilan API (link)

Perubahan API

  • Mengganti nama Metadata clientId menjadi clientRecordId, clientVersion menjadi clientRecordVersion. (link)
  • Membuat uid Metadata lebih mudah dibaca oleh pembaca, tidak lagi nullable. (link)
  • Menambahkan pound ke unit Massa (link)
  • Mengganti nama DeletionChange.deleteUid menjadi uid (link)
  • Mengganti nama Permission -> HealthPermission. Hal ini ditujukan untuk menghindari ambiguitas dengan izin Android Framework. (link)

Perbaikan Bug

  • Memperbaiki masalah regresi dengan unit kalori yang salah dengan Energi (link)
  • Memperbaiki masalah regresi dengan agregasi untuk beberapa jenis data (link)