Panduan ini kompatibel dengan Health Connect versi 1.1.0-alpha12.
Ada perubahan pada metadata di Health Connect untuk developer yang memilih untuk mengupgrade ke rilis 1.1.0-alpha12.
Informasi perpustakaan
ID artefak plugin Gradle Android Google Maven
mengidentifikasi library Health Connect yang perlu Anda upgrade.
Tambahkan dependensi Health Connect SDK ini ke file build.gradle
level
modul:
dependencies {
implementation "androidx.health.connect:connect-client:1.1.0-alpha12"
}
Perubahan metadata
Dua perubahan metadata telah diperkenalkan ke Health Connect Jetpack SDK mulai dari versi 1.1.0-alpha12 untuk memastikan bahwa metadata tambahan yang berguna ada di ekosistem.
Anda harus menentukan detail metadata setiap kali objek jenis Record()
dibuat instance-nya.
Anda harus menentukan salah satu dari empat metode perekaman saat menulis data ke Health Connect:
Metode perekaman | Deskripsi |
---|---|
RECORDING_METHOD_UNKNOWN |
Metode perekaman tidak dapat diverifikasi. |
RECORDING_METHOD_MANUAL_ENTRY |
Pengguna memasukkan data. |
RECORDING_METHOD_AUTOMATICALLY_RECORDED |
Perangkat atau sensor merekam data. |
RECORDING_METHOD_ACTIVELY_RECORDED |
Pengguna memulai atau mengakhiri sesi perekaman di perangkat. |
Contoh:
StepsRecord(
startTime \= Instant.ofEpochMilli(1234L),
startZoneOffset \= null,
endTime \= Instant.ofEpochMilli(1236L),
endZoneOffset \= null,
metadata \= Metadata.manualEntry(),
Count \= 10,
)
Anda wajib menentukan jenis perangkat untuk semua data yang direkam secara otomatis dan aktif. Jenis perangkat saat ini meliputi:
Jenis perangkat | Deskripsi |
---|---|
TYPE_UNKNOWN |
Jenis perangkat tidak diketahui. |
TYPE_WATCH |
Jenis perangkat adalah smartwatch. |
TYPE_PHONE |
Jenis perangkat adalah ponsel. |
TYPE_SCALE |
Jenis perangkat adalah skala. |
TYPE_RING |
Jenis perangkat adalah cincin. |
TYPE_HEAD_MOUNTED |
Jenis perangkat adalah perangkat yang dipasang di kepala. |
TYPE_FITNESS_BAND |
Jenis perangkatnya adalah gelang kebugaran. |
TYPE_CHEST_STRAP |
Jenis perangkat adalah tali dada. |
TYPE_SMART_DISPLAY |
Jenis perangkat adalah layar smart. |
Jika memungkinkan, berikan produsen dan model perangkat selain jenis perangkat. Contoh:
private val TEST_DEVICE = Device(
manufacturer = "Google",
model = "Pixel Watch",
type = Device.TYPE_WATCH
)
Cuplikan diperbarui
Panduan Health Connect telah diperbarui di mana pun cuplikan baru diperlukan untuk mematuhi persyaratan metadata baru. Untuk beberapa contoh, lihat halaman Menulis Data.
Metode metadata baru
Metadata tidak dapat lagi dibuat instance secara langsung, jadi gunakan salah satu metode factory untuk mendapatkan instance metadata baru. Setiap fungsi memiliki tiga varian tanda tangan:
activelyRecorded
fun activelyRecorded(device: Device): Metadata.
fun activelyRecorded(clientRecordId: String, clientRecordVersion: Long = 0, device: Device): Metadata
fun activelyRecordedWithId(id: String, device: Device): Metadata
autoRecorded
fun autoRecorded(device: Device): Metadata
fun autoRecorded(clientRecordId: String, clientRecordVersion: Long = 0, device: Device): Metadata
fun autoRecordedWithId(id: String, device: Device): Metadata
manualEntry
fun manualEntry(device: Device? = null): Metadata
fun manualEntry(clientRecordId: String, clientRecordVersion: Long = 0, device: Device? = null): Metadata
fun manualEntryWithId(id: String, device: Device? = null): Metadata
unknownRecordingMethod
fun unknownRecordingMethod(device: Device? = null): Metadata
fun unknownRecordingMethod(clientRecordId: String, clientRecordVersion: Long = 0, device: Device? = null): Metadata
fun unknownRecordingMethodWithId(id: String, device: Device? = null): Metadata
Untuk mengetahui informasi selengkapnya, lihat Project Open Source Android.
Menguji data
Gunakan Testing Library untuk mengejek nilai metadata yang diharapkan:
private val TEST_METADATA =
Metadata.unknownRecordingMethod(
clientRecordId = "clientId",
clientRecordVersion = 1L,
device = Device(type = Device.TYPE_UNKNOWN),
).populatedWithTestValues(id = "test")
Hal ini menyimulasikan perilaku penerapan Health Connect, yang otomatis mengisi nilai ini selama penyisipan data.
Untuk library pengujian, Anda perlu menambahkan dependensi Health Connect SDK ini ke
file build.gradle
level modul:
dependencies {
testImplementation "androidx.health.connect:connect-testing:1.0.0-alpha02"
}
Mengupgrade library
Langkah utama yang perlu Anda lakukan adalah:
Upgrade library Anda ke 1.1.0-alpha12.
Saat membangun library, error kompilasi akan muncul jika metadata baru diperlukan, jadi pastikan untuk menerapkan perubahan metadata yang diperlukan setiap kali objek jenis
Record()
diinstansiasi. Tindakan ini akan menyelesaikan migrasi.