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

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

शुरू करें

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

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

सुविधाएं दिखाने वाले फ़्लैग

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

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