Bu kılavuz, Health Connect 1.1.0-alpha12 sürümüyle uyumludur.
1.1.0-alpha12 sürümüne yükseltmeyi seçen geliştiriciler için Health Connect'teki meta verilerde değişiklikler yapıldı.
Kitaplık bilgileri
Google Maven Android Gradle eklentisi yapı kimliği, yükseltmeniz gereken Health Connect kitaplığını tanımlar.
Modül düzeyindeki build.gradle
dosyanıza şu Health Connect SDK bağımlılığını ekleyin:
dependencies {
implementation "androidx.health.connect:connect-client:1.1.0-alpha12"
}
Meta veri değişiklikleri
Ekosistemde ek yararlı meta verilerin bulunduğundan emin olmak için 1.1.0-alpha12 sürümü itibarıyla Health Connect Jetpack SDK'da iki meta veri değişikliği yapıldı.
Record()
türündeki bir nesne oluşturulduğunda meta veri ayrıntılarını belirtmeniz gerekir.
Health Connect'e veri yazarken dört kayıt yönteminden birini belirtmeniz gerekir:
Kayıt yöntemi | Açıklama |
---|---|
RECORDING_METHOD_UNKNOWN |
Kayıt yöntemi doğrulanamıyor. |
RECORDING_METHOD_MANUAL_ENTRY |
Kullanıcı verileri girdi. |
RECORDING_METHOD_AUTOMATICALLY_RECORDED |
Veriler bir cihaz veya sensör tarafından kaydedildi. |
RECORDING_METHOD_ACTIVELY_RECORDED |
Kullanıcı, bir cihazda kayıt oturumunun başlangıcını veya sonunu başlattı. |
Örnek:
StepsRecord(
startTime \= Instant.ofEpochMilli(1234L),
startZoneOffset \= null,
endTime \= Instant.ofEpochMilli(1236L),
endZoneOffset \= null,
metadata \= Metadata.manualEntry(),
Count \= 10,
)
Otomatik olarak ve etkin olarak kaydedilen tüm veriler için bir cihaz türü belirtmeniz gerekir. Mevcut cihaz türleri şunlardır:
Cihaz türü | Açıklama |
---|---|
TYPE_UNKNOWN |
Cihazın türü bilinmiyor. |
TYPE_WATCH |
Cihaz türü kol saatidir. |
TYPE_PHONE |
Cihaz türü telefon. |
TYPE_SCALE |
Cihaz türü bir ölçektir. |
TYPE_RING |
Cihaz türü bir yüzük. |
TYPE_HEAD_MOUNTED |
Cihaz türü, kafaya takılan bir cihazdır. |
TYPE_FITNESS_BAND |
Cihaz türü bir fitness bandı. |
TYPE_CHEST_STRAP |
Cihaz türü göğüs kemeridir. |
TYPE_SMART_DISPLAY |
Cihaz türü akıllı ekrandır. |
Örnek:
private val TEST_DEVICE = Device(type = Device.TYPE_PHONE)
Snippet'ler güncellendi
Health Connect kılavuzları, yeni meta veri şartlarına uymak için yeni snippet'lerin gerekli olduğu yerlerde güncellendi. Bazı örnekler için Veri Yazma sayfasına bakın.
Yeni meta veri yöntemleri
Meta veriler artık doğrudan örneklenemez. Bu nedenle, yeni bir meta veri örneği almak için fabrika yöntemlerinden birini kullanın. Her işlevin üç imza varyantı vardır:
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
Daha fazla bilgi için Android Açık Kaynak Projesi'ne bakın.
Test verileri
Beklenen meta veri değerlerini taklit etmek için Test Kitaplığı'nı kullanın:
private val TEST_METADATA =
Metadata.unknownRecordingMethod(
clientRecordId = "clientId",
clientRecordVersion = 1L,
device = Device(type = Device.TYPE_UNKNOWN),
).populatedWithTestValues(id = "test")
Bu, Health Connect uygulamasının davranışını simüle eder. Bu uygulama, kayıt ekleme sırasında bu değerleri otomatik olarak doldurur.
Test kitaplığı için modül düzeyindeki build.gradle
dosyanıza şu Health Connect SDK bağımlılığını eklemeniz gerekir:
dependencies {
testImplementation "androidx.health.connect:connect-testing:1.0.0-alpha02"
}
Kitaplığı yükseltme
Uygulamanız gereken ana adımlar şunlardır:
Kitaplığınızı 1.1.0-alpha12 sürümüne yükseltin.
Kitaplık oluşturulurken yeni meta verilerin gerekli olduğu durumlarda derleme hataları oluşur. Bu nedenle,
Record()
türü bir nesne oluşturulduğunda gerekli meta veri değişikliklerini uyguladığınızdan emin olun. Bu işlemle taşıma işlemi tamamlanır.