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

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

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

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

शुरू करें

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

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

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

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

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

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

  • क्लाइंट SDK टूल: Health Platform API का इस्तेमाल करने के लिए, इस 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 से जुड़ी होती हैं.

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

डेटा टाइप

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

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

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

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

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

SampleData टाइप:

टेबल 1: 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 टाइप:

टेबल 3: Health Platform 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 में उपलब्ध स्टैंडर्ड डेटा फ़ंक्शन के सेट के बारे में बताया गया है. यह प्लैटफ़ॉर्म, रॉ डेटा के लिए स्टैंडर्ड इंसर्ट, अपडेट, और मिटाने के फ़ंक्शन उपलब्ध कराता है.

Read 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, स्टोरेज लेयर से अपने कनेक्शन को अपने-आप मैनेज करता है. साथ ही, यह सभी इंटर-प्रोसेस कम्यूनिकेशन (आईपीसी) और आउटगोइंग अनुरोधों और इनकमिंग जवाबों के क्रमबद्ध होने की प्रोसेस को मैनेज करता है.