Health Connect
העדכון האחרון | גרסה יציבה | גרסה מועמדת להפצה | גרסת בטא | גרסה אלפא |
---|---|---|---|---|
15 בינואר 2025 | - | - | - | 1.1.0-alpha11 |
שליחת בקשה לקבלת גישה לסוגי נתונים
כדי לעזור לנו לשפר את הפרטיות והאבטחה של המשתמשים, מפתחים שמשתמשים ב-Health Connect חייבים להצהיר על גישה לקריאה ו/או לכתיבה לגבי סוגי הנתונים שבהם האפליקציות שלהם משתמשות. המפתחים חייבים לכלול תרחישי שימוש תקפים לסוגים של הנתונים שבהם הם משתמשים, על סמך מטרת האפליקציה. למידע נוסף, אפשר לעיין במאמרים הוספת מידע לטופס ההצהרה על אפליקציות בתחום הבריאות והרשאות ל-Health Connect ל-Android.
הצהרת יחסי תלות
כדי להוסיף תלות ב-health, צריך להוסיף את מאגר Google Maven לפרויקט. מידע נוסף זמין במאגר Maven של Google.
מוסיפים את יחסי התלות של הארטיפקטים הנדרשים בקובץ build.gradle
של האפליקציה או המודול:
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") }
מידע נוסף על יחסי תלות זמין במאמר הוספת יחסי תלות ל-build.
משוב
המשוב שלכם עוזר לנו לשפר את Jetpack. אם נתקלתם בבעיות חדשות או שיש לכם רעיונות לשיפור הספרייה הזו, נשמח לשמוע מכם. לפני שיוצרים בעיה חדשה, כדאי לעיין בבעיות הקיימות בספרייה הזו. כדי להצביע על בעיה קיימת, לוחצים על לחצן הכוכב.
מידע נוסף זמין במסמכי התיעוד של Issue Tracker.
גרסה 1.0 לבדיקה של Health Connect
גרסה 1.0.0-alpha01
4 בספטמבר 2024
androidx.health.connect:connect-testing:1.0.0-alpha01
משוחרר. גרסת 1.0.0-alpha01 כוללת את ההוספות האלה.
תכונות חדשות
ספריית הבדיקה של Health Connect מפשטת את היצירה של בדיקות אוטומטיות. אפשר להשתמש בספרייה הזו כדי לאמת את ההתנהגות של האפליקציה ולוודא שהיא מגיבה בצורה נכונה למקרים נדירים שקשה לבדוק באופן ידני.
אפשר להשתמש בספרייה כדי ליצור בדיקות יחידה מקומיות, שבדרך כלל מאמתות את ההתנהגות של הכיתות באפליקציה שמקיימות אינטראקציה עם לקוח Health Connect.
נקודת הכניסה לספרייה היא המחלקה FakeHealthConnectClient
, שבה משתמשים בבדיקות כדי להחליף את HealthConnectClient
. התכונות הבאות נכללות בה:
- ייצוג של רשומות בזיכרון, כך שאפשר להוסיף, להסיר, למחוק ולקרוא אותן
- יצירת אסימוני שינוי ומעקב אחר שינויים
- חלוקה לדפים של רשומות ושינויים
- תמיכה בתשובות על צבירת נתונים באמצעות stubs
- מאפשר לכל פונקציה להוציא חריגים
FakePermissionController
שאפשר להשתמש בו כדי לדמות בדיקות הרשאות
שינויים ב-API
- הוספה של
FakeHealthConnectClient
e8469 - הוספת שינויים ברירת המחדל של סטאב ל-
FakeHealthConnectClient
e8469
גרסה 1.1
גרסה 1.1.0-alpha11
15 בינואר 2025
התכונות androidx.health.connect:connect-client:1.1.0-alpha11
, androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha11
וגם androidx.health.connect:connect-client-proto:1.1.0-alpha11
משוחררות. גרסת 1.1.0-alpha11 מכילה את ההוספות האלה.
תכונות חדשות
- עדכנו את הרשאות הקריאה ברקע ובהיסטוריה כדי לתמוך ב-Android 13 וגרסאות קודמות.
שינויים ב-API
- נוספו עומסי יתר מפורטים בקוד ל-
HealthPermission.getReadPermission
ול-HealthPermission.getWritePermission
(I59a2e)
תיקוני באגים
- הסרת שיטות הרשאה מדור קודם (Ifd080)
- הספרייה הזו משתמשת עכשיו בהערות של JSpecify לגבי ערכים null, שהן שימוש בסוגים. מפתחי Kotlin צריכים להשתמש בארגומנטים הבאים של המהדר כדי לאכוף שימוש נכון:
-Xjspecify-annotations=strict
,-Xtype-enhancement-improvements-strict-mode
(Iaf73a, b/326456246) - תוקנו מסמכי התיעוד של
HealthPermission.READ_HEALTH_DATA_HISTORY
, במיוחד בכך שצוין שקריאות ללא ההרשאה הזו נכשלות רק כשמנסים לקרוא נקודת נתונים אחת. (Id5b5a)
גרסה 1.1.0-alpha10
16 באוקטובר 2024
התכונות androidx.health.connect:connect-client:1.1.0-alpha10
, androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha10
וגם androidx.health.connect:connect-client-proto:1.1.0-alpha10
משוחררות. גרסת 1.1.0-alpha10 מכילה את ההוספות האלה.
תכונות חדשות
- נוספו
SkinTemperature
סוגי צבירת נתונים. (Ibe123) - הוספה של הקבוע
FEATURE_PLANNED_EXERCISE
(Ie02a3) - נוספו הרשאות קריאה להיסטוריה. (I5cf41)
- נוספה האפשרות להשתמש ב-Training plans API (If5be1)
- הוספת ה-API של
SkinTemperatureRecord
. (I5605d)
תיקוני אבטחה
- החל מהשינוי הזה, androidx מבצע קומפילציה מול protobuf 4.28.2 כדי לטפל בבעיה CVE-2024-7254. כדי לטפל בסיכון של נקודת החולשה, צריך לשדרג את התלות ב-
androidx.health:connect:connect-client-proto
וב-androidx.health:connect:connect-client-external-protobuf
לגרסה העדכנית ביותר, 1.1.0-alpha10.
גרסה 1.1.0-alpha09
18 בספטמבר 2024
התכונות androidx.health.connect:connect-client:1.1.0-alpha09
, androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha09
וגם androidx.health.connect:connect-client-proto:1.1.0-alpha09
משוחררות. גרסת 1.1.0-alpha09 מכילה את ההוספות האלה.
תכונות חדשות
גרסה 1.1.0-alpha08
4 בספטמבר 2024
התכונות androidx.health.connect:connect-client:1.1.0-alpha08
, androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha08
וגם androidx.health.connect:connect-client-proto:1.1.0-alpha08
משוחררות. גרסת 1.1.0-alpha08 כוללת את ההוספות האלה.
שינויים ב-API
- מגדירים ערך ברירת מחדל למשתנה features בקובץ
HealthConnectClient
. (I788dc) - מוסיפים ממשק API כדי לבדוק את הזמינות של התכונות. (Iedd43)
תיקוני באגים
- הפונקציה מחזירה את הערך
SDK_UNAVAILABLE
ב-HealthConnectClient.getSdkStatus()
כאשר הערך שלHealthConnectManager
הוא null ב-U+ 5802f - הוספת שינויים מברירת המחדל של
toString
ל-RecordClasses
aa5dc - הסרנו את התיאור הידני של הגישה לממשקי API חדשים של פלטפורמות, כי זה קורה באופן אוטומטי באמצעות בניית מודלים של ממשקי API כשמשתמשים ב-R8 עם AGP 7.3 ואילך (למשל, R8 גרסה 3.3) ובכל גרסאות ה-build כשמשתמשים ב-AGP 8.1 ואילך (למשל, D8 גרסה 8.1). לקוחות שלא משתמשים ב-AGP מומלצים לעדכן ל-D8 בגרסה 8.1 ואילך. למידע נוסף, מומלץ לעיין במאמר הזה. (If6b4c, b/345472586)
גרסה 1.1.0-alpha07
10 בינואר 2024
androidx.health.connect:connect-client:1.1.0-alpha07
משוחרר. גרסה 1.1.0-alpha07 מכילה את ההוספות האלה.
שינויים ב-API
- מחזירים את הערך
SDK_UNAVAILABLE
כש#getSdkStatus
נקרא בהקשר של משתמש בפרופיל. (I91df3) - מסירים את
SleepStageRecord
. (/If6ada)
תיקוני באגים
- זריקה של
RemoteException
במקוםIllegalStateException
כשיש כשלים בקישור. (Id2233)
גרסה 1.1.0-alpha06
18 באוקטובר 2023
androidx.health.connect:connect-client:1.1.0-alpha06
משוחרר. גרסה 1.1.0-alpha06 מכילה את ההוספות האלה.
שינויים ב-API
- הופכת את ההגדרות של
recordingMethod
לציבוריות. (I401fb)
תיקוני באגים
- מוסיפים תיעוד למסלול התרגיל ומציינים שהמיקום צריך להיות לפני שעת הסיום של הסשן. (0e51e6)
גרסה 1.1.0-alpha05
4 באוקטובר 2023
androidx.health.connect:connect-client:1.1.0-alpha05
משוחרר. גרסה 1.1.0-alpha05 מכילה את ההוספות האלה.
שינויים ב-API
- נוספה כוונה שמובילה למסך ניהול הנתונים ב-Health Connect. (Ibf591)
- הוסרו שיטות שהוצאו משימוש ב-
AggregationResult
. (Idbda9) - הוספנו ממשק API נוח ליצירת
ReadRecordsRequest
, וגם למחיקת רשומות ולקריאת רשומות, עם סוג רשומה מופשט. (If58a5)
תיקוני באגים
- תוקן באג ב-Android 14 שבו שדות תזונתיים שהיו null הוחזרו כ-
Double.MIN_VALUE
. (1aa1d1) - תוקן באג ב-Android 14 שבו צבירה לפי תקופה חודשית/שנתית גרמה להשלכת חריגה בתגובה בגלל קטגוריות עם אותה שעת התחלה/סיום. (281313)
גרסה 1.1.0-alpha04
6 בספטמבר 2023
androidx.health.connect:connect-client:1.1.0-alpha04
משוחרר. גרסה 1.1.0-alpha04 מכילה את ההוספות האלה.
שינויים ב-API
- Java בלבד: משנים את השם של השדה
getHasMore()
ב-ChangesResponse
ל-hasMore()
. (I80695) - התאמת הבדיקה של
HealthPermissionsRequestContract#createIntent
לגרסאות Android שונות. החוזה בודק שכל ההרשאות קשורות לבריאות. (I143fc)
תיקוני באגים
- תיקון חריגה שמופיעה כשיוצרים את
ExerciseSessionRecord
עםExerciseRoute
שמכיל רשימה ריקה של מיקומים. (I45c16) - עדכון המסמכים והקוד לדוגמה בנושא קריאת סשנים של שינה ב-
SleepSessionRecord
. (Idf0de)
גרסה 1.1.0-alpha03
26 ביולי 2023
androidx.health.connect:connect-client:1.1.0-alpha03
משוחרר. גרסה 1.1.0-alpha03 כוללת את השמירות האלה.
תכונות חדשות
- ממשק API לקריאה ולכתיבה של מסלולי אימון:
- הוספת את
ExerciseRouteResult
אלExerciseSessionRecord
- האפשרות
ExerciseRouteRequestContract
נוספה
- הוספת את
שינויים ב-API
- נוספו
ExerciseRouteResult
ותתי-הסוג שלו:Data
, NoData
ו-ConsentRequiredStates
. - נוספה
ExerciseRoute
ככיתה עצמאית שמכילה את נתוני המיקום של המסלול. (I22eed) - ההוספה של
PERMISSION_WRITE_EXERCISE_ROUTE
התבצעה. (I92fc4) - נוסף
ExerciseRouteRequestContract
, נוסףHealthPermissionsRequestContract
. (Ief0e5)
תיקוני באגים
- מבנה קבוע של אנרגיה בקילוג'אול (Ie8791)
גרסה 1.1.0-alpha02
21 ביוני 2023
androidx.health.connect:connect-client:1.1.0-alpha02
משוחרר. גרסה 1.1.0-alpha02 מכילה את ההוספות האלה.
תיקוני באגים
- תוקן הדליפה של
HealthDataSdkService
(Ia3ba5) - תמיד צריך להפנות ללקוח
HealthConnect
הנכון כשמבקשים הרשאות ב-Android U. (I6415a)
גרסה 1.1.0-alpha01
7 ביוני 2023
androidx.health.connect:connect-client:1.1.0-alpha01
משוחרר. הגרסה הזו מפותחת בהסתעפות פנימית.
תכונות חדשות
- תמיכה בגרסת ה-framework של Health Connect ל-Android 14. ערכת ה-SDK הזו היא דרישה מוקדמת ל-Android 14. בלי הרשאה כזו, אפליקציות לא יוכלו לשלב את עצמן עם Health Connect ב-Android 14.
- נוספה שיטת הקלטה לתיעוד המטא-נתונים.
שינויים ב-API
- השינויים ב-Session API:
- נוספו שלבי שינה שונים ל-
SleepSessionRecord
והוסרSleepStageRecord
. - הוספת את
ExerciseLap
ואתExerciseSegment
ל-ExerciseSessionRecord
.
- נוספו שלבי שינה שונים ל-
- מגבלות קצב תקופתיות ויומיות (כולל מגבלות זיכרון) על פעולות קריאה, שינוי ביומן, הוספה ומחיקה.
- נוספה בדיקת תקינות לכל השדות מסוג
NutritionRecord
. - נוסף אימות עבור
HeartRateVariabilityRmssdRecord
. - שני ממשקי API שהוצאו משימוש הוסרו:
HealthConnectClient#isProviderAvailable
ו-HealthConnectClient#isApiSupported
.
תיקוני באגים
- שוויון קבוע של יחידות לכל סוגי היחידות, והשוויון לא תלוי יותר בסוג שמשמש להפעלה של היחידות. לדוגמה, Mass.grams(1000) שווה עכשיו ל-Mass.kilograms(1).
גירסה 1.0
גרסה 1.0.0-alpha11
22 בפברואר 2023
androidx.health.connect:connect-client:1.0.0-alpha11
משוחרר. גרסה 1.0.0-alpha11 מכילה את ההצהרות האלה.
שינויים ב-API
- הוספת כוונה לשימוש לפתיחת Health Connect. (Ic8055)
- הסרת חלק מסוגי התרגילים. משתמשים ב-
EXERCISE_TYPE_STRENGTH_TRAINING
, ב-EXERCISE_TYPE_HIGH_INTENSITY_INTERVAL_TRAINING
או ב-EXERCISE_TYPE_CALISTHENICS
במקום בסוגי השימושים שהוסרו. (I7291c) - הוספת ממשק API חדש,
sdkStatus()
, שמאחד את שני ממשקי ה-API הקודמיםisSdkSupported()
ו-isProviderAvailable()
. (Iac89d) - שינוי ממשקי ה-API שמקבלים את
providerPackageName
כך שיקבלו מחרוזת אחת במקום רשימה. (I67e0f)
גרסה 1.0.0-alpha10
25 בינואר 2023
androidx.health.connect:connect-client:1.0.0-alpha10
משוחרר. גרסה 1.0.0-alpha10 מכילה את ההצהרות האלה.
שינויים ב-API
ExerciseEventRecord
, ExerciseLapRecord
,ExerciseRepititionRecord
ו-SwimmingStrokesRecord
כבר לא נתמכים כ-RecordTypes
. לא ניתן יותר לכתוב אותם או לקרוא אותם מ-HealthConnect
. מסירים את כל ההפניות לסוגים האלה של נתונים מהשילוב עםHealthConnect
. (If7ca2)- שינויים ב-API של ההרשאות כדי לקבל הרשאות בפורמט חדש שמבוסס על מחרוזת. השינוי הזה מחייב גם שינוי של הצהרת ההרשאות לפורמט ההרשאות הרגיל של Android. (Ib0a2f)
גרסה 1.0.0-alpha09
11 בינואר 2023
androidx.health.connect:connect-client:1.0.0-alpha09
משוחרר. גרסה 1.0.0-alpha09 מכילה את ההוספות האלה.
תכונות חדשות
- נוספו ל-Health Connect 2 סוגי נתונים חדשים בנושא בריאות נשים:
IntermenstrualBleedingRecord
ו-MenstruationPeriodRecord
.MenstruationFlow.ENUMs
הן 'קלה', 'בינונית', 'כבדה' ו'לא ידועה'.
שינויים ב-API
גרסה 1.0.0-alpha08
7 בדצמבר 2022
androidx.health.connect:connect-client:1.0.0-alpha08
משוחרר. גרסה 1.0.0-alpha08 מכילה את ההצהרות האלה.
שינויים ב-API
- הוספת
BodyWaterMass
, HeartRateVariabilityRmssdRecord
כסוגי רשומות נתמכים חדשים. (Ifd58f) - הסרה של
HipCircumferenceRecord
,WaistCircumferenceRecord
כ-RecordTypes
נתמך. (I62fb9) - הערך בשדה
MenstruationFlowRecord.flow
השתנה מ-stringdef
ל-intdefs
. (I0369f) - שינו שדות רשומה דמויי-enum עם
Strings
ל-Integers
כדי לשפר את הביצועים. (I3b295) - השדות
ExerciseSession
,ExerciseRepetitions
ו-SleepStage
, שדומים למאפייני enum, הועברו מסוג מחרוזת לסוג מספר שלם. (Id32a9) - השם השתנה ל-
ExerciseSessionRecord.ACTIVE_TIME_TOTAL->EXERCISE_DURATION_TOTAL
. (I5d7bd) - הוספת הערך 'Unusual' למערכי הערכים של
CervicalMucus
. כדי להוסיף יותר פרטים, אפשר לשנות את השם של 'שקוף' ל'לבן'. השינויים:CervicalMucus#appearance
ו-#sensation השתנה מ-StringDefs
ל-IntDefs. (I3ac51) - הערך
StringDef
של המאפיין המסווגDeviceTypes
הועבר עכשיו ל-IntDefs
בקטע Device (מכשיר). (I3abf3) - הוספת
HealthConnectClient.isApiSupported()
, שמחזיר את הערך false בגרסאות SDK ללא הטמעות תואמות. השם השתנה ל-HealthConnectClient.isAvailable->isProviderAvailable
. (I3674e)
תיקוני באגים
- איסור על ערכים של
HeartRate beatsPerMinute
שקטנים מ-1 (I6052f) - הוספת הערה
@JvmDefaultWithCompatibility
(I8f206)
גרסה 1.0.0-alpha07
24 באוקטובר 2022
androidx.health.connect:connect-client:1.0.0-alpha07
משוחרר. גרסה 1.0.0-alpha07 מכילה את ההצהרות האלה על ביצוע שינויים (commits).
שינויים ב-API
- ארגומנטים של רשומות ללא ערכי ברירת מחדל מופיעים לפני ארגומנטים עם ערכי ברירת מחדל. כדי לשמור על עקביות, הארגומנטים
Instant
ו-ZoneOffset
תמיד ממוקמים בהתחלה. (Id618c) - משנים את השם של
HealthConnectClient.getOrCreate#packageNames
ל-providerPackageNames
. (Id81e4)
תיקוני באגים
- הוספת אימותים של ערכי שדות ברשומה. ערכים שגויים מאוד יגרמו להפעלת השגיאה
IllegalArgumentExceptions
כשהערך שסופק יהיה מחוץ לגבולות סבירים. (Ie171d) - אימות שעת ההתחלה של הרשומה לפני שעת הסיום, במקרים הרלוונטיים. (I02460)
גרסה 1.0.0-alpha06
5 באוקטובר 2022
androidx.health.connect:connect-client:1.0.0-alpha06
משוחרר. גרסה 1.0.0-alpha06 כוללת את ההצהרות האלה.
תיקוני באגים
- שיפור מחזור החיים של חיבורי השירות. (If2bd5)
- תיקון באג קריסה מסוג NPE כשמתרחשת חריגה בחיבור לשירות. (I13546)
גרסה 1.0.0-alpha05
21 בספטמבר 2022
androidx.health.connect:connect-client:1.0.0-alpha05
משוחרר. גרסה 1.0.0-alpha05 מכילה את ההוספות האלה.
שינויים ב-API
- שינינו את השם של
Metadata.uid
ל-Metadata.id
והשתמשנו במונחrecordId
באופן עקבי בממשקי ה-API הרלוונטיים של CRUD. (I3d1d2) - הפכנו את
PermissionController.createRequestPermissionActivityContract
לשיטה סטטית במקום לשיטת מכונה. השם החדש הואPermissionController.createRequestPermissionResultContract
. (Icd2fe) - נוסף סוג יחידה
BloodGlucose
עבורBloodGlucoseRecord
(I97678) - משנים את השם של
MenstruationRecord
ל-MenstruationFlowRecord
. (I3b88e)
תיקוני באגים
- תיקון התנהגות לא מכוונת שלא מפיצה נתונים סטטיסטיים של חזית התצוגה מתהליך הלקוח. (Ifb44c)
גרסה 1.0.0-alpha04
24 באוגוסט 2022
androidx.health.connect:connect-client:1.0.0-alpha04
פורסם. גרסה 1.0.0-alpha04 מכילה את ההצהרות האלה על ביצוע שינויים.
מעבר ל-'androidx.health.connect'
החל מגרסה 1.0.0-alpha04, האתר androidx.health:health-connect-client
הועבר אל androidx.health.connect:connect-client
. לגרסאות קודמות של Health Connect, אפשר להיכנס לדף androidx.health.
כדי להעביר את הקוד, פשוט משנים את ייבוא יחסי התלות מ-androidx.health:health-connect-client:1.0.0-alpha03
ל-androidx.health.connect:connect-client:1.0.0-alpha04
.
תכונות חדשות
- יומני ניפוי באגים אופציונליים מובנים לקריאות ל-API (קישור)
שינויים ב-API
- השם של המטא-נתונים
clientId
השתנה ל-clientRecordId
, והשם שלclientVersion
השתנה ל-clientRecordVersion
. (קישור) - שיפרנו את הקריאוּת של המזהה של המטא-נתונים, והוא לא יכול להיות null יותר. (קישור)
- הוספת פאונד ליחידת מסה (קישור)
- השם של
DeletionChange.deleteUid
השתנה ל-uid (קישור) - שינוי שם ההרשאה -> HealthPermission. כך אפשר להימנע מבלבול עם הרשאות של Android Framework. (קישור)
תיקוני באגים
- תוקנו בעיות רגרסיה ביחידה שגויה של קלוריות בנתוני האנרגיה (קישור)
- תוקנה בעיית רגרסיה עם צבירת נתונים עבור כמה סוגי רשומות (קישור)