Health प्लैटफ़ॉर्म एपीआई

Health Platform API एक Android एपीआई है. इससे डेवलपर को एक ही इंटरफ़ेस मिलता है, जिसकी मदद से वे उपयोगकर्ता के सेहत, सेहत से जुड़ी जानकारी, और फ़िटनेस के पुराने डेटा को पढ़ सकते हैं, उसमें बदलाव कर सकते हैं, और उसे शेयर कर सकते हैं. Health Platform की मदद से, उपयोगकर्ता अपने डेटा को कंट्रोल कर सकते हैं. उपयोगकर्ता यह कंट्रोल कर सकते हैं कि किन ऐप्लिकेशन के पास अलग-अलग तरह के डेटा को पढ़ने या उसमें बदलाव करने का ऐक्सेस है. Health Platform API के डेटा टाइप में, ऊंचाई, दिल की धड़कन वगैरह शामिल हैं.

Health Platform API, उपयोगकर्ताओं को डेटा को सेव और शेयर करने का एक तरीका उपलब्ध कराता है. इसकी मदद से, वे यह चुन सकते हैं कि कौनसे ऐप्लिकेशन उनकी सेहत, फ़िटनेस, और तंदुरुस्ती से जुड़ा निजी डेटा ऐक्सेस और दिखा सकते हैं. इससे ऐप्लिकेशन डेवलपर, उपयोगकर्ताओं को उनके डिवाइस की परफ़ॉर्मेंस के बारे में ज़्यादा जानकारी दे पाते हैं. साथ ही, उपयोगकर्ता अपने डेटा को ज़्यादा असरदार तरीके से मॉनिटर कर पाते हैं.

Health Platform API सॉफ़्टवेयर डेवलपर किट की मदद से, Android ऐप्लिकेशन डेवलपर को चुनिंदा Samsung डिवाइसों पर, उपयोगकर्ता के स्वास्थ्य और सेहत से जुड़े डेटा का ऐक्सेस देने के लिए ज़रूरी सभी चीज़ें मिलती हैं. साथ ही, इसकी मदद से ऐप्लिकेशन, डेटा डालने, मिटाने, और पढ़ने जैसे कई काम एक साथ कर सकते हैं.

शुरू करें

Health Platform का इस्तेमाल करते समय, इन बातों का ध्यान रखें:

  • क्लाइंट ऐप्लिकेशन को, उपयोगकर्ता से डेटा पढ़ने या उसमें बदलाव करने के लिए, ज़्यादा जानकारी वाली अनुमतियां लेनी होंगी.
  • इसके बाद, उपयोगकर्ता किसी भी समय अनुमतियां अस्वीकार कर सकता है या उन्हें रद्द कर सकता है.
  • Health Platform API, सिर्फ़ Samsung के चुनिंदा डिवाइसों पर काम करता है.
  • HealthDataClient, Health Platform का क्लाइंट है और Health Platform का एंट्री पॉइंट है.

यहां दी गई इमेज में, इंटिग्रेशन के लिए ज़रूरी चरण दिखाए गए हैं. डेवलपर को इनका पालन करना होगा:

इंटिग्रेशन के चरण, जिनमें SDK टूल सेटअप करना, ऐक्सेस और अनुमतियां देना, और सीआरयूडी ऑपरेशन शामिल हैं.
पहली इमेज. Health Platform को इंटिग्रेट करने का तरीका.

रिलीज़ फ़ाइलें

Health Platform V1 रिलीज़ में ये शामिल हैं:

  • क्लाइंट SDK टूल: Health Platform API का इस्तेमाल करने के लिए, अपने ऐप्लिकेशन में इस SDK टूल को शामिल करें. SDK टूल, एक Maven रिपॉज़िटरी है. इसे सीधे अपने ऐप्लिकेशन की Gradle बिल्ड फ़ाइलों में शामिल किया जा सकता है.

Health Platform इंस्टॉल करना

Health Platform को इंस्टॉल करने के लिए, यह तरीका अपनाएं:

ऐप्लिकेशन की रूट build.gradle फ़ाइल में, नीचे दिए गए उदाहरण में दिखाए गए तरीके से रिपॉज़िटरी जोड़ें:

allprojects {
    . . .
    repositories {
        . . .
        google()
    }
}

अपने मॉड्यूल की build.gradle फ़ाइल में, Health Platform SDK पर डिपेंडेंसी जोड़ें, जैसा कि नीचे दिए गए उदाहरण में दिखाया गया है:

Kotlin

dependencies { . . . implementation("com.google.android.libraries.healthdata:health-data-api:1.0.0-alpha01") }

Groovy

dependencies { . . . implementation 'com.google.android.libraries.healthdata:health-data-api:1.0.0-alpha01' }

डेटा

Health Platform, सेहत और फ़िटनेस से जुड़ा डेटा सेव और व्यवस्थित करता है. इसमें अलग-अलग तरह के डेटा को मेज़र करने के तरीकों के बीच के मुख्य अंतरों को भी ध्यान में रखा जाता है. उदाहरण के लिए, दिल की गति का आकलन तुरंत किया जाता है, लेकिन कदमों की संख्या का आकलन किसी समयावधि के हिसाब से किया जाता है.

यहां Health Platform के मुख्य ऑब्जेक्ट और उनके बीच के अंतर के बारे में बताया गया है:

  • RawData: मेज़रमेंट और डेटा रिकॉर्ड.
  • DataType: यह हेल्थ और फ़िटनेस से जुड़े सामान्य डेटा के लिए एक स्पेसिफ़ायर है. जैसे, दिल की धड़कन, शरीर में मौजूद वसा या शरीर का तापमान. साथ ही, यह डेटा के फ़ॉर्मैट के बारे में भी बताता है. जैसे, फ़ील्ड, रीड-ओनली या ज़रूरी नहीं.
  • SampleData: RawData ऑब्जेक्ट, जो एक बार में मेज़र की गई वैल्यू होता है. जैसे, हृदय की गति, रक्तचाप या दौड़ने की स्पीड.
  • IntervalData: यह एक RawData ऑब्जेक्ट है, जो किसी समयावधि के दौरान की गई गतिविधि की कुल मेज़रमेंट होती है. जैसे, चले गए कदमों की संख्या, तय की गई दूरी या बर्न की गई कैलोरी.
  • SeriesData: RawData ऑब्जेक्ट, जो किसी समयावधि के दौरान मेज़रमेंट के क्रम को शामिल करता है. SeriesData, ज़्यादा फ़्रीक्वेंसी वाले सेंसर डेटा के लिए खास तौर पर सही है. जैसे, गतिविधि सेशन के दौरान लगातार धड़कन की दर के सैंपल.

RawData की तीनों क्लास, DataType के किसी खास सबक्लास से जुड़ी होती हैं: SampleData, IntervalData, और SeriesData, SampleDataType, IntervalDataType, और SeriesDataType से जुड़ी होती हैं.

Health Platform, हर RawData ऑब्जेक्ट को डालने पर उसे एक यूनीक आइडेंटिफ़ायर (यूआईडी) असाइन करता है. इस यूआईडी का इस्तेमाल करके, पढ़ने, अपडेट करने या मिटाने के अनुरोधों में किसी खास RawData ऑब्जेक्ट का रेफ़रंस दिया जा सकता है.

डेटा टाइप

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

हर डेटा टाइप को उसके डेटा फ़ॉर्मैट से तय किया जाता है. इसमें ये शामिल हैं:

  • फ़ील्ड: डेटा टाइप से जुड़े खास या सामान्य फ़ील्ड. उदाहरण के लिए, ब्लड ऑक्सीजन सैचुरेशन (SpO2) डेटा टाइप में टाइटल, नोट, और प्रतिशत जैसे फ़ील्ड होते हैं.
  • टाइप: long, double, string या enum.
  • एट्रिब्यूट: रीड-ओनली, ज़रूरी, ज़रूरी नहीं या पुष्टि करने की रेंज.

डेटा टाइप की सूची

उपलब्ध डेटा टाइप को समझकर, Health Platform का ज़्यादा से ज़्यादा फ़ायदा पाएं. Health Platform में, यहां दी गई टेबल में दिखाए गए डेटा टाइप काम करते हैं. डेटा टाइप को उनके फ़ॉर्मैट के हिसाब से व्यवस्थित किया जाता है: सैंपल, इंटरवल या सीरीज़.

SampleData टाइप:

DataType.BasalMetabolicRateDataType BASAL_METABOLIC_RATE ज़रूरी है
DataType.BloodGlucoseDataType BLOOD_GLUCOSE ज़रूरी और वैकल्पिक
DataType.BloodPressureDataType BLOOD_PRESSURE ज़रूरी और वैकल्पिक
DataType.BodyFatDataType BODY_FAT ज़रूरी है
DataType.BodyTemperatureDataType BODY_TEMPERATURE ज़रूरी और वैकल्पिक
DataType.BoneMassDataType BONE_MASS ज़रूरी है
DataType.CervicalMucusDataType CERVICAL_MUCUS वैकल्पिक
DataType.CervicalPositionDataType CERVICAL_POSITION वैकल्पिक
DataType.CyclingPedalingCadenceDataType CYCLING_PEDALING_CADENCE ज़रूरी है
DataType.DateOfBirthDataType DATE_OF_BIRTH पठनीय मात्र
DataType.GenderDataType GENDER पठनीय मात्र
DataType.HeartRateDataType HEART_RATE ज़रूरी है
DataType.HeightDataType HEIGHT ज़रूरी है
DataType.HipCircumferenceDataType HIP_CIRCUMFERENCE ज़रूरी है
DataType.HrvDifferentialIndexDataType HRV_DIFFERENTIAL_INDEX ज़रूरी है
DataType.HrvRmssdDataType HRV_RMSSD ज़रूरी है
DataType.HrvSDataType HRV_S ज़रूरी है
DataType.HrvSd2DataType HRV_SD2 ज़रूरी है
DataType.HrvSdannDataType HRV_SDANN ज़रूरी है
DataType.HrvSdnnDataType HRV_SDNN ज़रूरी है
DataType.HrvSdnnIndexDataType HRV_SDNN_INDEX ज़रूरी है
DataType.HrvSdnnIndexDataType HRV_SDNN_INDEX ज़रूरी है
DataType.HrvSdsdDataType HRV_SDSD ज़रूरी है
DataType.HrvTinnDataType HRV_TINN ज़रूरी है
DataType.LeanBodyMassDataType LEAN_BODY_MASS ज़रूरी है
DataType.LocationDataType LOCATION ज़रूरी है
DataType.MenstruationDataType MENSTRUATION वैकल्पिक
DataType.OvulationTestDataType OVULATION_TEST ज़रूरी है
DataType.OxygenSaturationDataType OXYGEN_SATURATION ज़रूरी है
DataType.PaceDataType PACE ज़रूरी है
DataType.PowerDataType POWER ज़रूरी है
DataType.RespiratoryRateDataType RESPIRATORY_RATE ज़रूरी है
DataType.RestingHeartRateDataType RESTING_HEART_RATE ज़रूरी है
DataType.SexualActivityDataType SEXUAL_ACTIVITY ज़रूरी है
DataType.SpeedDataType SPEED ज़रूरी है
DataType.StepsCadenceDataType STEPS_CADENCE ज़रूरी है
DataType.Vo2MaxDataType VO2_MAX ज़रूरी और वैकल्पिक
DataType.WaistCircumferenceDataType WAIST_CIRCUMFERENCE ज़रूरी है
DataType.WeightDataType WEIGHT ज़रूरी है

IntervalData टाइप:

DataType.ActiveEnergyDataType ACTIVE_ENERGY_BURNED ज़रूरी है
DataType.ActiveTimeDataType ACTIVE_TIME पठनीय मात्र
DataType.ActivityEventDataType ACTIVITY_EVENT ज़रूरी है
DataType.ActivityLapDataType ACTIVITY_LAP वैकल्पिक
DataType.ActivitySessionDataType ACTIVITY_SESSION ज़रूरी है
DataType.BasalEnergyDataType BASAL_ENERGY_BURNED पठनीय मात्र
DataType.DistanceDataType DISTANCE ज़रूरी है
DataType.ElevationGainedDataType ELEVATION_GAINED ज़रूरी है
DataType.FloorsClimbedDataType FLOORS_CLIMBED ज़रूरी है
DataType.HydrationDataType HYDRATION ज़रूरी है
DataType.NutritionDataType NUTRITION वैकल्पिक
DataType.RepetitionsDataType REPETITIONS ज़रूरी है
DataType.SleepSessionDataType SLEEP_SESSION वैकल्पिक
DataType.SleepStageDataType SLEEP_STAGE ज़रूरी है
DataType.StepsDataType STEPS ज़रूरी है
DataType.SwimmingStrokesDataType SWIMMING_STROKES ज़रूरी और वैकल्पिक
DataType.TotalEnergyDataType TOTAL_ENERGY_BURNED पठनीय मात्र

SeriesData टाइप:

DataType.CyclingPedalingCadenceSeriesDataType CYCLING_PEDALING_CADENCE ज़रूरी है
DataType.HeartRateSeriesDataType HEART_RATE ज़रूरी है
DataType.LocationSeriesDataType LOCATION ज़रूरी है
DataType.PaceSeriesDataType PACE ज़रूरी है
DataType.PowerSeriesDataType POWER ज़रूरी है
DataType.SpeedSeriesDataType SPEED ज़रूरी है
DataType.StepsCadenceSeriesDataType STEPS_CADENCE ज़रूरी है

डेवलपर फ़ंक्शन

यहां Health Platform में उपलब्ध स्टैंडर्ड डेटा फ़ंक्शन के सेट के बारे में बताया गया है. यह प्लैटफ़ॉर्म, रॉ डेटा के लिए डालने, अपडेट करने, और मिटाने के स्टैंडर्ड फ़ंक्शन उपलब्ध कराता है.

AggregatedData को पढ़ना

इस प्लैटफ़ॉर्म की मदद से, क्लाइंट AggregatedData के इन टाइप पर एग्रीगेशन फ़ंक्शन लागू कर सकते हैं:

  • StatisticalData: SampleData या SeriesData के किसी सेट में औसत, कम से कम या ज़्यादा से ज़्यादा वैल्यू. जैसे, किसी गतिविधि के सेशन के दौरान दिल की कम से कम और ज़्यादा से ज़्यादा दर.
  • CumulativeData: IntervalData वैल्यू का योग. जैसे, एक दिन के इंटरवल में कदमों की कुल संख्या.
  • CountData: RawData ऑब्जेक्ट की संख्या की आसान गिनती. जैसे, किसी हफ़्ते में गतिविधि सेशन की संख्या. डेटा की गिनती, सैंपल, इंटरवल, और सीरीज़ डेटा टाइप के लिए की जा सकती है.

Health Platform API से कनेक्ट करना

HealthDataClient, Health Platform API का एंट्री पॉइंट है.

Health Platform से कनेक्ट करने का तरीका यहां बताया गया है:

  1. नए HealthDataClient इंस्टेंस बनाने के लिए, HealthDataService.getClient का इस्तेमाल करें.
  2. इसके बाद, क्लाइंट ऐप्लिकेशन को requestPermissions (Set) तरीके का इस्तेमाल करके, उपयोगकर्ता से अनुमति का अनुरोध करना होगा.

HealthDataClient, स्टोरेज लेयर से अपने कनेक्शन को अपने-आप मैनेज करता है. साथ ही, इंटर-प्रोसेस कम्यूनिकेशन (आईपीसी) और बाहर भेजे जाने वाले अनुरोधों और आने वाले जवाबों को सीरियलाइज़ करता है.