التحقّق من توفّر الميزات

عند إضافة ميزات جديدة إلى Health Connect، قد لا يحدّث المستخدمون دائمًا إصدار Health Connect لديهم. تتيح لك واجهة Feature Availability API التحقّق من توفُّر ميزة معيّنة في Health Connect على جهاز المستخدم واتّخاذ الإجراء المناسب.

البدء

تتشارك واجهة Feature Availability API التبعية نفسها مع حزمة تطوير البرامج (SDK) الخاصة بتطبيق Health Connect. للبدء، تأكَّد من أنّ الإصدار 1.1.0-alpha08 على الأقل متوفّر في ملف build.gradle:

dependencies {
  implementation("androidx.health.connect:connect-client:1.2.0-alpha06")
}

عناصر التحكّم في الميزات

يتم إدراج علامات الميزات المتاحة لتطبيق Health Connect في الجدول التالي. لن تكون الوظائف التي تتيحها علامة الميزة متاحة للاستخدام إذا كان جهاز المستخدم لا يتوافق مع الميزة.

الجدول: علامات توفُّر ميزات Health Connect
مفتاح إيقاف أو تفعيل الميزة نوع البيانات الأدلة ذات الصلة
FEATURE_ACTIVITY_INTENSITY مستوى الجهد عند النشاط التمارين الرياضية
FEATURE_EXTENDED_DEVICE_TYPES أنواع الأجهزة الإضافية متطلبات البيانات الوصفية
FEATURE_MATCHMAKING المواءمة
FEATURE_PERSONAL_HEALTH_RECORD السجلّات الطبية تنسيق بيانات السجلّات الطبية
كتابة البيانات الطبية
قراءة البيانات الطبية
FEATURE_MINDFULNESS_SESSION اليقظة تتبُّع اليقظة الذهنية
FEATURE_PLANNED_EXERCISE التمارين الرياضية المخطَّط لها التمارين
خطط التدريب
FEATURE_READ_HEALTH_DATA_IN_BACKGROUND قراءة البيانات في الخلفية مثال على القراءة في الخلفية
FEATURE_READ_HEALTH_DATA_HISTORY قراءة البيانات السابقة قراءة البيانات التي مرّ عليها أكثر من 30 يومًا
FEATURE_SKIN_TEMPERATURE درجة حرارة الجلد المؤشرات الحيوية
قياس درجة حرارة الجلد

إجراء عملية التحقّق

الدالة الرئيسية للتحقّق من توفّر الميزة هي getFeatureStatus(). تعرض هذه الدالة الثوابت الصحيحة FEATURE_STATUS_AVAILABLE أو FEATURE_STATUS_UNAVAILABLE:

لتحديد ما إذا كان جهاز المستخدم يتيح ميزة "قراءة البيانات الصحية في الخلفية" في Health Connect، تحقَّق من توفُّر FEATURE_READ_HEALTH_DATA_IN_BACKGROUND على جهاز المستخدم:

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

  // Feature is available
} else {
  // Feature isn't available
}

للحصول على قائمة بجميع علامات الميزات المتاحة، يُرجى الاطّلاع على صفحة مرجع HealthConnectFeatures.

التعامل مع عدم توفّر الميزات

إذا لم تكن إحدى الميزات متاحة على جهاز المستخدم، قد يؤدي التحديث إلى تفعيلها. يمكنك توجيه المستخدم لتحديث Health Connect إذا لم يكن لديه أحدث إصدار متوافق على جهازه. ومع ذلك، لا يمكن للمستخدمين الذين يستخدمون حزمة APK (على Android 13 والإصدارات الأقدم) استخدام ميزات وحدة النظام المتاحة فقط على الأجهزة التي تعمل بنظام التشغيل Android 14 أو الإصدارات الأحدث.

بالنسبة إلى أنواع الأجهزة الموسّعة، إذا لم يكن FEATURE_EXTENDED_DEVICE_TYPES متاحًا على جهاز المستخدم، يتم التعامل مع هذه القيم على أنّها Device.TYPE_UNKNOWN. يجب توفير خيار احتياطي معقول في منطق الكتابة وواجهة المستخدم.