Merencanakan dan meninjau jenis data Health Connect

Health Connect menyimpan dan menyusun data kesehatan dan kebugaran. Hal ini juga memperhitungkan untuk mengetahui cara pengukuran berbagai jenis data. Jenis data ini mencakup detak jantung pengukuran yang segera dilakukan, jumlah langkah yang diambil seiring waktu, dan data tidur yang diambil dalam sesi.

Penting untuk memahami terlebih dahulu jenis dan izin data apa yang digunakan Hubungkan penawaran sehingga Anda dapat merencanakan persyaratan aplikasi. Dengannya, Anda perlu meninjau tipe data sebelum Anda dapat menyelesaikan persyaratan.

Kategori jenis data

Health Connect mendukung jenis data yang digunakan di sebagian besar aplikasi kesehatan dan kebugaran aplikasi untuk memberikan variasi sebanyak mungkin. Health Connect bertujuan untuk menawarkan tampilan dan penyimpanan data kesehatan dan kebugaran yang komprehensif. Tipe data ini termasuk ke dalam kategori berikut:

  • Aktivitas: Kategori ini merekam aktivitas yang dilakukan pengguna. Kategori ini dapat mencakup aktivitas kesehatan dan kebugaran seperti berlari, berenang, dan tidur.
  • Pengukuran Tubuh: Kategori ini merekam data umum terkait tubuh, seperti berat badan pengguna dan tingkat metabolisme basal mereka.
  • Pencatatan Siklus: Kategori ini merekam siklus menstruasi dan titik data terkait, seperti hasil biner uji ovulasi.
  • Gizi: Kategori ini merekam jenis data hidrasi dan gizi. Mantan menunjukkan berapa banyak air yang dikonsumsi pengguna dalam satu kali minum. Terakhir mencakup bidang opsional seperti kalori, gula, dan magnesium.
  • Tidur: Kategori ini merekam data interval yang terkait dengan durasi dan jenis tidur pengguna.
  • Tanda Vital: Kategori ini merekam informasi penting tentang kesehatan umum pengguna. Informasi ini mencakup data seperti suhu tubuh, glukosa darah, darah tekanan darah, dan saturasi oksigen darah.

Format jenis data

Jenis data di Health Connect disimpan dalam objek yang merupakan subclass Record

Untuk setiap jenis data, ada {i>field<i} terkait yang bersifat generik seperti time dan zoneOffset, atau spesifik seperti title, count, dan percentage. Beberapa kolom menggunakan jenis sederhana—seperti panjang, ganda, atau string—sementara yang lain menggunakan jenis kompleks seperti enumerasi dan class seperti Instant serta ZoneOffset Atribut kolom ini dapat bersifat wajib atau opsional. Beberapa atribut bersifat hanya baca, dan beberapa atribut dibatasi pada rentang nilai tertentu.

Untuk daftar lengkap jenis data yang tersedia dan kolomnya, lihat class di Jetpack.

Atribut data tambahan

Data di Health Connect API juga mencakup atribut metadata yang dijelaskan dalam daftar berikut:

  • ID Health Connect: Setiap titik data ditetapkan dengan ID unik (UID) saat pembuatan. Hal ini berguna untuk operasi baca dan tulis standar. Lihat ID Health Connect untuk mengetahui detail selengkapnya.
  • Waktu terakhir diubah: Tindakan ini menandai stempel waktu saat instance terakhir mencatat memiliki pembaruan. ID ini otomatis dibuat pada saat pembuatan pertama rekaman atau setiap update.
  • Asal data: Health Connect menyimpan informasi tentang aplikasi yang data tersebut berasal. {i>Password<i} berisi nama paket dari tempat asal tersebut, yang ditambahkan secara otomatis pada saat pembuatan.
  • Perangkat: Health Connect menyimpan informasi tentang perangkat asal data. Isinya adalah produsen dan model perangkat itu, yang dapat memberikan nilai secara manual.
  • Client ID: Health Connect memberikan Client ID sehingga aplikasi klien dapat merujuk ke data menggunakan ID mereka sendiri, yang membantu resolusi konflik dan membuat sinkronisasi lebih mudah. Ini disediakan ke data secara manual.
  • Versi catatan klien: Bersama dengan Client-ID, Health Connect menyediakan pembuatan versi untuk membantu melacak perubahan selama sinkronisasi data. Ini disediakan ke data secara manual.
  • Metode perekaman: Health Connect memungkinkan Anda memahami cara data direkam. Metode ini termasuk aplikasi yang merekam data secara pasif (secara otomatis), dan pengguna perekaman data secara aktif maupun secara manual.

ID Health Connect

Health Connect menetapkan ID unik (UID) ke objek data yang baru disisipkan, yang mengidentifikasi objek data dan membedakannya dari yang lain. ID Health Connect berguna dalam permintaan baca atau tulis. ID Health Connect tidak sama dengan Client-ID. Aplikasi klien menetapkan Client ID, sedangkan Health Connect secara eksklusif menetapkan ID Health Connect.

Perhatikan catatan berikut saat menggunakan ID Health Connect:

  • Sesi memiliki satu ID Health Connect, tetapi data dalam sesi memiliki ID Health Connect Anda sendiri.
  • ID Health Connect tidak terikat atau terkait dengan stempel waktu.
  • Beberapa kasus penggunaan mungkin memerlukan penyimpanan ID Health Connect tertentu selama sebuah alur kerja. Misalnya, ID tertentu diperlukan untuk diambil dan ditampilkan ke pengguna entri data yang baru saja mereka catat.

Waktu di Health Connect

Semua data yang ditulis ke Health Connect harus menentukan informasi offset zona waktu. Menentukan offset zona waktu memungkinkan aplikasi membaca data untuk mewakilinya waktu sipil. Waktu sipil adalah waktu yang lokal dan relevan bagi pengguna, tetapi tidak harus dalam Waktu Universal Terkoordinasi (Coordinated Universal Time/UTC).

Dalam kasus yang jarang terjadi, offset zona waktu mungkin tidak tersedia. Kapan hal ini terjadi di Android 14 (API Level 34), Health Connect menetapkan offset zona berdasarkan zona waktu default sistem perangkat. Di Android 13 dan versi yang lebih rendah (Level API 33 dan yang lebih rendah), Anda dapat menulis ke Health Connect tanpa menentukan informasi offset zona waktu, yang harus dihindari jika memungkinkan.

Setelan waktu dan zona

Menentukan informasi offset zona waktu saat menulis data memberikan informasi zona waktu saat membaca data di Health Connect. Namun, tindakan ini dapat gagal dalam situasi tertentu, seperti saat offset zona waktu tidak diberikan. Aplikasi Anda harus siap menangani kedua jenis data, dengan cara yang sesuai dengan situasi tertentu.

Izin

Sebelum meminta izin apa pun, aplikasi Anda harus mendeklarasikannya dalam manifes terlebih dahulu. Lihat tabel berikut untuk pemetaan lengkap jenis data dan izin akses.

Untuk 1.0.0-alpha10 dan yang lebih tinggi

Jenis class kumpulan data Membaca dan menulis pernyataan izin
ActiveCaloriesBurned android.permission.health.READ_ACTIVE_CALORIES_BURNED
android.permission.health.WRITE_ACTIVE_CALORIES_BURNED
BasalBodyTemperature android.permission.health.READ_BASAL_BODY_TEMPERATURE
android.permission.health.WRITE_BASAL_BODY_TEMPERATURE
BasalMetabolicRate android.permission.health.READ_BASAL_METABOLIC_RATE
android.permission.health.WRITE_BASAL_METABOLIC_RATE
BloodGlucose android.permission.health.READ_BLOOD_GLUCOSE
android.permission.health.WRITE_BLOOD_GLUCOSE
BloodPressure android.permission.health.READ_BLOOD_PRESSURE
android.permission.health.WRITE_BLOOD_PRESSURE
BodyFat android.permission.health.READ_BODY_FAT
android.permission.health.WRITE_BODY_FAT
BodyTemperature android.permission.health.READ_BODY_TEMPERATURE
android.permission.health.WRITE_BODY_TEMPERATURE
BodyWaterMass android.permission.health.READ_BODY_WATER_MASS
android.permission.health.WRITE_BODY_WATER_MASS
BoneMass android.permission.health.READ_BONE_MASS
android.permission.health.WRITE_BONE_MASS
CervicalMucus android.permission.health.READ_CERVICAL_MUCUS
android.permission.health.WRITE_CERVICAL_MUCUS
CyclingPedalingCadence android.permission.health.READ_EXERCISE
android.permission.health.WRITE_EXERCISE
Distance android.permission.health.READ_DISTANCE
android.permission.health.WRITE_DISTANCE
ElevationGained android.permission.health.READ_ELEVATION_GAINED
android.permission.health.WRITE_ELEVATION_GAINED
ExerciseSession android.permission.health.READ_EXERCISE
android.permission.health.WRITE_EXERCISE
FloorsClimbed android.permission.health.READ_FLOORS_CLIMBED
android.permission.health.WRITE_FLOORS_CLIMBED
HeartRate android.permission.health.READ_HEART_RATE
android.permission.health.WRITE_HEART_RATE
HeartRateVariabilityRmssd android.permission.health.READ_HEART_RATE_VARIABILITY
android.permission.health.WRITE_HEART_RATE_VARIABILITY
Height android.permission.health.READ_HEIGHT
android.permission.health.WRITE_HEIGHT
Hydration android.permission.health.READ_HYDRATION
android.permission.health.WRITE_HYDRATION
IntermenstrualBleeding android.permission.health.READ_INTERMENSTRUAL_BLEEDING
android.permission.health.WRITE_INTERMENSTRUAL_BLEEDING
LeanBodyMass android.permission.health.READ_LEAN_BODY_MASS
android.permission.health.WRITE_LEAN_BODY_MASS
MenstruationFlow android.permission.health.READ_MENSTRUATION
android.permission.health.WRITE_MENSTRUATION
MenstruationPeriod android.permission.health.READ_MENSTRUATION
android.permission.health.WRITE_MENSTRUATION
Nutrition android.permission.health.READ_NUTRITION
android.permission.health.WRITE_NUTRITION
OvulationTest android.permission.health.READ_OVULATION_TEST
android.permission.health.WRITE_OVULATION_TEST
OxygenSaturation android.permission.health.READ_OXYGEN_SATURATION
android.permission.health.WRITE_OXYGEN_SATURATION
Power android.permission.health.READ_POWER
android.permission.health.WRITE_POWER
RespiratoryRate android.permission.health.READ_RESPIRATORY_RATE
android.permission.health.WRITE_RESPIRATORY_RATE
RestingHeartRate android.permission.health.READ_RESTING_HEART_RATE
android.permission.health.WRITE_RESTING_HEART_RATE
SexualActivity android.permission.health.READ_SEXUAL_ACTIVITY
android.permission.health.WRITE_SEXUAL_ACTIVITY
SleepSession android.permission.health.READ_SLEEP
android.permission.health.WRITE_SLEEP
Speed android.permission.health.READ_SPEED
android.permission.health.WRITE_SPEED
StepsCadence android.permission.health.READ_STEPS
android.permission.health.WRITE_STEPS
Steps android.permission.health.READ_STEPS
android.permission.health.WRITE_STEPS
TotalCaloriesBurned android.permission.health.READ_TOTAL_CALORIES_BURNED
android.permission.health.WRITE_TOTAL_CALORIES_BURNED
Vo2Max android.permission.health.READ_VO2_MAX
android.permission.health.WRITE_VO2_MAX
Weight android.permission.health.READ_WEIGHT
android.permission.health.WRITE_WEIGHT
WheelchairPushes android.permission.health.READ_WHEELCHAIR_PUSHES
android.permission.health.WRITE_WHEELCHAIR_PUSHES

Untuk 1.0.0-alpha09 dan yang lebih lama

Jenis class kumpulan data Membaca dan menulis pernyataan izin
ActiveCaloriesBurned androidx.health.permission.ActiveCaloriesBurned.READ
androidx.health.permission.ActiveCaloriesBurned.WRITE
BasalBodyTemperature androidx.health.permission.BasalBodyTemperature.READ
androidx.health.permission.BasalBodyTemperature.WRITE
BasalMetabolicRate androidx.health.permission.BasalMetabolicRate.READ
androidx.health.permission.BasalMetabolicRate.WRITE
BloodGlucose androidx.health.permission.BloodGlucose.READ
androidx.health.permission.BloodGlucose.WRITE
BloodPressure androidx.health.permission.BloodPressure.READ
androidx.health.permission.BloodPressure.WRITE
BodyFat androidx.health.permission.BodyFat.READ
androidx.health.permission.BodyFat.WRITE
BodyTemperature androidx.health.permission.BodyTemperature.READ
androidx.health.permission.BodyTemperature.WRITE
BodyWaterMass androidx.health.permission.BodyWaterMass.READ
androidx.health.permission.BodyWaterMass.WRITE
BoneMass androidx.health.permission.BoneMass.READ
androidx.health.permission.BoneMass.WRITE
CervicalMucus androidx.health.permission.CervicalMucus.READ
androidx.health.permission.CervicalMucus.WRITE
CyclingPedalingCadence androidx.health.permission.CyclingPedalingCadence.READ
androidx.health.permission.CyclingPedalingCadence.WRITE
Distance androidx.health.permission.Distance.READ
androidx.health.permission.Distance.WRITE
ElevationGained androidx.health.permission.ElevationGained.READ
androidx.health.permission.ElevationGained.WRITE
ExerciseSession androidx.health.permission.ExerciseSession.READ
androidx.health.permission.ExerciseSession.WRITE
FloorsClimbed androidx.health.permission.FloorsClimbed.READ
androidx.health.permission.FloorsClimbed.WRITE
HeartRate androidx.health.permission.HeartRate.READ
androidx.health.permission.HeartRate.WRITE
HeartRateVariabilityRmssd androidx.health.permission.HeartRateVariabilityRmssd.READ
androidx.health.permission.HeartRateVariabilityRmssd.WRITE
Height androidx.health.permission.Height.READ
androidx.health.permission.Height.WRITE
Hydration androidx.health.permission.Hydration.READ
androidx.health.permission.Hydration.WRITE
IntermenstrualBleeding androidx.health.permission.IntermenstrualBleeding.READ
androidx.health.permission.IntermenstrualBleeding.WRITE
LeanBodyMass androidx.health.permission.LeanBodyMass.READ
androidx.health.permission.LeanBodyMass.WRITE
MenstruationFlow androidx.health.permission.MenstruationFlow.READ
androidx.health.permission.MenstruationFlow.WRITE
Nutrition androidx.health.permission.Nutrition.READ
androidx.health.permission.Nutrition.WRITE
OvulationTest androidx.health.permission.OvulationTest.READ
androidx.health.permission.OvulationTest.WRITE
OxygenSaturation androidx.health.permission.OxygenSaturation.READ
androidx.health.permission.OxygenSaturation.WRITE
Power androidx.health.permission.Power.READ
androidx.health.permission.Power.WRITE
RespiratoryRate androidx.health.permission.RespiratoryRate.READ
androidx.health.permission.RespiratoryRate.WRITE
RestingHeartRate androidx.health.permission.RestingHeartRate.READ
androidx.health.permission.RestingHeartRate.WRITE
SexualActivity androidx.health.permission.SexualActivity.READ
androidx.health.permission.SexualActivity.WRITE
SleepSession androidx.health.permission.SleepSession.READ
androidx.health.permission.SleepSession.WRITE
Speed androidx.health.permission.Speed.READ
androidx.health.permission.Speed.WRITE
StepsCadence androidx.health.permission.StepsCadence.READ
androidx.health.permission.StepsCadence.WRITE
Steps androidx.health.permission.Steps.READ
androidx.health.permission.Steps.WRITE
TotalCaloriesBurned androidx.health.permission.TotalCaloriesBurned.READ
androidx.health.permission.TotalCaloriesBurned.WRITE
Vo2Max androidx.health.permission.Vo2Max.READ
androidx.health.permission.Vo2Max.WRITE
Weight androidx.health.permission.Weight.READ
androidx.health.permission.Weight.WRITE
WheelchairPushes androidx.health.permission.WheelchairPushes.READ
androidx.health.permission.WheelchairPushes.WRITE

Tinjau jenis data dan izin Anda

Setelah merencanakan jenis data dan izin, Anda dapat mengimplementasikan selama pengembangan.

Saat meninjau aplikasi Anda sebelum menguploadnya ke Play Store, periksa kembali daftar tipe data dan izin yang diperlukan aplikasi Anda. Hal ini memungkinkan Anda mendeklarasikan penggunaan data aplikasi secara akurat.

Saat Anda bersiap untuk memublikasikan aplikasi ke Play Store, mendeklarasikan akses ke jenis data Health Connect yang digunakan aplikasi Anda pengguna. Jika tidak, pengguna mungkin akan ditanyai dengan pesan error tempat aplikasi Anda tidak dapat mengakses jenis data Health Connect karena memerlukan persetujuan.