देखना कि सुविधा उपलब्ध है या नहीं

Health Connect में नई सुविधाएं जोड़े जाने पर, ऐसा हो सकता है कि उपयोगकर्ता हमेशा Health Connect का नया वर्शन अपडेट न करें. सुविधा की उपलब्धता से जुड़ा एपीआई, यह पता लगाने का एक तरीका है कि Health Connect में मौजूद कोई सुविधा, आपके उपयोगकर्ता के डिवाइस पर उपलब्ध है या नहीं. इससे यह तय किया जा सकता है कि क्या कार्रवाई करनी है.

शुरू करें

Feature Availability API की डिपेंडेंसी वही है जो Health Connect SDK की है. शुरू करने के लिए, पुष्टि करें कि आपकी 1.1.0-alpha08 फ़ाइल में कम से कम 1.1.0-alpha08 वर्शन मौजूद हो:build.gradle

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

Feature flags

Health Connect के लिए उपलब्ध सुविधा फ़्लैग की सूची, यहां दी गई टेबल में दी गई है. अगर उपयोगकर्ता के डिवाइस पर कोई सुविधा काम नहीं करती है, तो फ़ीचर फ़्लैग के पीछे मौजूद फ़ंक्शन का इस्तेमाल नहीं किया जा सकेगा.

टेबल: Health Connect की सुविधा की उपलब्धता के फ़्लैग
फ़ीचर फ़्लैग डेटा टाइप मिलती-जुलती गाइड
FEATURE_ACTIVITY_INTENSITY गतिविधि की इंटेंसिटी
FEATURE_EXTENDED_DEVICE_TYPES डिवाइस के अन्य टाइप मेटाडेटा से जुड़ी ज़रूरी शर्तें
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 का नया वर्शन नहीं है, तो उसे Health Connect अपडेट करने के लिए कहा जा सकता है. हालांकि, Android 13 और इससे पहले के वर्शन पर APK का इस्तेमाल करने वाले लोग, सिस्टम मॉड्यूल की उन सुविधाओं का इस्तेमाल नहीं कर सकते जो सिर्फ़ Android 14 या इसके बाद के वर्शन पर उपलब्ध हैं.

एक्सटेंडेड डिवाइस टाइप के लिए, अगर FEATURE_EXTENDED_DEVICE_TYPES उपयोगकर्ता के डिवाइस पर उपलब्ध नहीं है, तो उन वैल्यू को Device.TYPE_UNKNOWN के तौर पर माना जाता है. अपने राइट और यूज़र इंटरफ़ेस (यूआई) लॉजिक में एक सही फ़ॉलबैक उपलब्ध कराएं.