המדריך הזה תואם לגרסה 1.1.0-alpha12 של Health Connect.
יש שינויים במטא-נתונים ב-Health Connect למפתחים שבוחרים לשדרג לגרסה 1.1.0-alpha12.
פרטי הספרייה
מזהה הארטיפקט של Google Maven Android gradle plugin מזהה את ספריית Health Connect שצריך לשדרג אליה.
מוסיפים את התלות הזו ב-Health Connect SDK לקובץ build.gradle
ברמת המודול:
dependencies {
implementation "androidx.health.connect:connect-client:1.1.0-alpha12"
}
שינויים במטא-נתונים
הוספנו שני שינויים במטא-נתונים ל-Health Connect Jetpack SDK בגרסה 1.1.0-alpha12, כדי להבטיח שיהיו מטא-נתונים שימושיים נוספים בסביבה העסקית.
צריך לציין את פרטי המטא-נתונים בכל פעם שיוצרים אובייקט מסוג Record()
.
כשכותבים נתונים ב-Health Connect, צריך לציין אחת מארבע שיטות ההקלטה:
שיטת ההקלטה | תיאור |
---|---|
RECORDING_METHOD_UNKNOWN |
לא ניתן לאמת את שיטת ההקלטה. |
RECORDING_METHOD_MANUAL_ENTRY |
המשתמש הזין את הנתונים. |
RECORDING_METHOD_AUTOMATICALLY_RECORDED |
מכשיר או חיישן תיעד את הנתונים. |
RECORDING_METHOD_ACTIVELY_RECORDED |
המשתמש הפעיל את תחילת או סיום סשן ההקלטה במכשיר. |
לדוגמה:
StepsRecord(
startTime \= Instant.ofEpochMilli(1234L),
startZoneOffset \= null,
endTime \= Instant.ofEpochMilli(1236L),
endZoneOffset \= null,
metadata \= Metadata.manualEntry(),
Count \= 10,
)
חובה לציין סוג מכשיר לכל הנתונים שנרשמים באופן אוטומטי ופעיל. סוגי המכשירים הנוכחיים כוללים:
סוג מכשיר | תיאור |
---|---|
TYPE_UNKNOWN |
סוג המכשיר לא ידוע. |
TYPE_WATCH |
סוג המכשיר הוא שעון. |
TYPE_PHONE |
סוג המכשיר הוא טלפון. |
TYPE_SCALE |
סוג המכשיר הוא מאזניים. |
TYPE_RING |
סוג המכשיר הוא טבעת. |
TYPE_HEAD_MOUNTED |
סוג המכשיר הוא מכשיר שמחובר לראש. |
TYPE_FITNESS_BAND |
סוג המכשיר הוא צמיד כושר. |
TYPE_CHEST_STRAP |
סוג המכשיר הוא רצועת חזה. |
TYPE_SMART_DISPLAY |
סוג המכשיר הוא מסך חכם. |
לדוגמה:
private val TEST_DEVICE = Device(type = Device.TYPE_PHONE)
קטעי הקוד עודכנו
עדכנו את המדריכים של Health Connect בכל מקום שבו נדרשים קטעי קוד חדשים כדי לעמוד בדרישות החדשות לגבי מטא-נתונים. בדף כתיבת נתונים מפורטות דוגמאות.
שיטות חדשות של מטא-נתונים
אי אפשר יותר ליצור ישירות מופע של מטא-נתונים, לכן צריך להשתמש באחת משיטות המפעל כדי ליצור מופע חדש של מטא-נתונים. לכל פונקציה יש שלוש וריאציות חתימה:
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
מידע נוסף זמין בפרויקט הקוד הפתוח של Android.
נתוני בדיקה
משתמשים ב-Testing Library כדי ליצור ערכים מדומים של המטא-נתונים הצפויים:
private val TEST_METADATA =
Metadata.unknownRecordingMethod(
clientRecordId = "clientId",
clientRecordVersion = 1L,
device = Device(type = Device.TYPE_UNKNOWN),
).populatedWithTestValues(id = "test")
כך תוכלו לדמות את ההתנהגות של הטמעת Health Connect, שמאכלסת את הערכים האלה באופן אוטומטי במהלך הוספת הרשומות.
בספריית הבדיקה, צריך להוסיף את התלות הזו ב-Health Connect SDK לקובץ build.gradle
ברמת המודול:
dependencies {
testImplementation "androidx.health.connect:connect-testing:1.0.0-alpha02"
}
שדרוג הספרייה
השלבים העיקריים שצריך לבצע הם:
משדרגים את הספרייה לגרסה 1.1.0-alpha12.
כשמפתחים את הספרייה, יישלחו שגיאות הידור במקומות שבהם נדרשים מטא-נתונים חדשים. לכן, חשוב להטמיע את השינויים הנדרשים במטא-נתונים בכל פעם שיוצרים אובייקט מסוג
Record()
. הפעולה הזו אמורה להשלים את ההעברה.