איך יודעים אילו תכונות זמינות

כשמוסיפים תכונות חדשות ל-Health Connect, יכול להיות שהמשתמשים לא תמיד יעדכנו את של Health Connect. באמצעות Feature Availability API אפשר לבדוק אם תכונה מסוימת ב-Health Connect זמינה במכשיר של המשתמש ולהחליט איזו פעולה לבצע.

שנתחיל?

ל-Feature Availability API יש את אותה תלות כמו Health Connect SDK. כדי להתחיל, צריך לוודא שלפחות גרסה 1.1.0-alpha08 נמצאת ב קובץ build.gradle:

dependencies {
  implementation("androidx.health.connect:connect-client:1.1.0-alpha08")
}

ביצוע הבדיקה

הפונקציה הראשית לבדיקת זמינות של תכונות היא getFeatureStatus(). הפונקציה מחזירה את הקבועים המספריים FEATURE_STATUS_AVAILABLE או FEATURE_STATUS_UNAVAILABLE:

if (healthConnectClient
     .features
     .getFeatureStatus(
       HealthConnectFeatures.FEATURE_HEALTH_DATA_BACKGROUND_READ
     ) == HealthConnectFeatures.FEATURE_STATUS_AVAILABLE) {

  // Feature is available
  ...
} else {
  // Feature is not available
  ...
}

טיפול בחוסר זמינות של תכונות

אם תכונה מסוימת לא זמינה במכשיר של המשתמש, יכול להיות שעדכון יפעיל אותה. שלך כדאי להנחות את המשתמשים לעדכן את Health Connect אם עדיין לא את הגרסה האחרונה שנתמכת במכשיר שלהם. אבל משתמשים שמשתמשים ב-APK (ב-Android מגרסה 13 ומטה) לא יכולים להשתמש בתכונות מודול המערכת שזמינות רק זמינה במכשירים עם Android מגרסה 14 ומעלה.