HealthKit फ्रेमवर्क Apple हेल्थ इकोसिस्टम का एक केंद्रीय घटक है जो iPhone, Apple Watch और तृतीय-पक्ष उपकरणों से डेटा को एक सुरक्षित स्थानीय स्टोरेज में एकत्रित करता है। Apple Developer Documentation, 2025 के अनुसार, प्लेटफ़ॉर्म 100 से अधिक डेटा प्रकारों का समर्थन करता है — शारीरिक गतिविधि और नींद से लेकर प्रयोगशाला परीक्षणों और हृदय संबंधी संकेतकों तक। एकल भंडार चिकित्सा जानकारी प्रत्येक डेटा प्रकार के लिए दानेदार पहुँच नियंत्रण के साथ अनुप्रयोगों के बीच निर्बाध सिंक्रनाइज़ेशन सुनिश्चित करता है।
मुख्य बिंदु
HealthKit Apple का एक फ्रेमवर्क है, जिसे 2014 में iOS 8 के साथ पेश किया गया था, जो उपयोगकर्ता के स्वास्थ्य और फिटनेस डेटा के केंद्रीकृत प्रबंधन के लिए डिज़ाइन किया गया है। प्लेटफ़ॉर्म एक एकीकृत भंडार के रूप में कार्य करता है जहाँ एप्लिकेशन और डिवाइस चिकित्सा जानकारी लिख और पढ़ सकते हैं।
तृतीय-पक्ष समाधानों के विपरीत, HealthKit सीधे iOS ऑपरेटिंग सिस्टम में निर्मित है, जो हार्डवेयर स्तर पर उच्च प्रदर्शन और सुरक्षा सुनिश्चित करता है। एप्लिकेशन एक-दूसरे तक सीधी पहुँच नहीं रखते — सभी ऑपरेशन केंद्रीय HKHealthStore के माध्यम से होते हैं।
Apple WWDC 2024 के अनुसार, अमेरिका में 87% से अधिक iPhone उपयोगकर्ताओं ने कम से कम एक बार अंतर्निहित स्वास्थ्य ऐप का उपयोग किया है, जो HealthKit पर आधारित है। इकोसिस्टम में हज़ारों तृतीय-पक्ष एप्लिकेशन शामिल हैं — फिटनेस ट्रैकर्स से लेकर टेलीमेडिसिन सेवाओं तक।
HealthKit आर्किटेक्चर बहु-स्तरीय भंडारण के सिद्धांत पर बनाया गया है जिसमें प्रत्येक डेटा स्रोत के लिए पृथक कंटेनर हैं। निचले स्तर पर हार्डवेयर AES-256 के साथ एन्क्रिप्टेड SQLite डेटाबेस है। ऊपरी स्तर पर HKHealthStore है — एकीकृत इंटरैक्शन इंटरफ़ेस।
प्रत्येक रिकॉर्ड में मेटाडेटा होता है: HKSource स्रोत, HKDevice डिवाइस, दिनांक, समय, और iCloud सिंक्रनाइज़ेशन फ़्लैग। सिस्टम एक ही स्रोत से डुप्लिकेट रिकॉर्ड को स्वचालित रूप से डीडुप्लिकेट करता है, डेटा विरूपण को रोकता है।
डेटा को प्रकारों के अनुसार समूहीकृत किया जाता है — संख्यात्मक संकेतकों के लिए HKQuantityType (हृदय गति, कदम, कैलोरी) और श्रेणीबद्ध घटनाओं के लिए HKCategoryType (नींद, लक्षण, मासिक धर्म चक्र)। यह संरचना HKSampleQuery या HKStatisticsQuery के माध्यम से किसी भी पैरामीटर संयोजन के लचीले क्वेरी की अनुमति देती है।
HealthKit 100 से अधिक मानकीकृत प्रकारों के डेटा का समर्थन करता है, जो श्रेणियों में विभाजित हैं: शारीरिक गतिविधि, पोषण, नींद, हृदय प्रणाली, प्रजनन स्वास्थ्य, प्रयोगशाला परिणाम और महत्वपूर्ण संकेत। प्रत्येक प्रकार में HKUnit माप इकाई और पहुँच स्तर होता है।
डेवलपर HKCorrelation के माध्यम से कस्टम सहसंबंध भी बना सकते हैं — संबंधित मापों का एक समूह। उदाहरण के लिए, भोजन रिकॉर्ड में कैलोरी, प्रोटीन, वसा और कार्बोहाइड्रेट एकल ऑब्जेक्ट के रूप में शामिल हो सकते हैं। अनुक्रमिक मापों जैसे ग्लूकोज़ स्तर के लिए, HKSeriesSample का उपयोग किया जाता है।
HealthKit के साथ काम करना HKHealthStore — एक सिंगलटन — को परिभाषित करने से शुरू होता है जो फ्रेमवर्क आयात करने पर स्वचालित रूप से बनता है। स्टोर के माध्यम से, एप्लिकेशन जाँचता है कि प्लेटफ़ॉर्म डिवाइस पर उपलब्ध है या नहीं, क्योंकि iPad और iPod touch पर समर्थन अनुपस्थित हो सकता है। यह भी ध्यान रखना महत्वपूर्ण है कि HealthKit Mac Catalyst पर उपलब्ध नहीं है — macOS के लिए अलग कार्यान्वयन की आवश्यकता है।
import HealthKit
let healthStore = HKHealthStore()
let stepType = HKQuantityType
.quantityType(forIdentifier: .stepCount)
let heartRateType = HKQuantityType
.quantityType(forIdentifier: .heartRate)
let typesToRead: Set = [stepType, heartRateType]
HealthKit डेटा स्रोतों और अनुप्रयोगों के बीच मध्यस्थ के रूप में कार्य करता है, एक अतुल्यकालिक प्रकाशन-सदस्यता मॉडल का उपयोग करता है। स्रोत एप्लिकेशन HKHealthStore के माध्यम से डेटा लिखता है, और सदस्यता लेने वाले एप्लिकेशन HKObserverQuery के माध्यम से नए रिकॉर्ड की सूचनाएँ प्राप्त करते हैं, जो पृष्ठभूमि में चलता है।
फ्रेमवर्क iCloud के माध्यम से पृष्ठभूमि सिंक्रनाइज़ेशन का समर्थन करता है: यदि उपयोगकर्ता साइन इन है, तो HealthKit स्वचालित रूप से वास्तविक समय में सभी Apple उपकरणों में डेटा वितरित करता है। जब नेटवर्क नहीं है, तो परिवर्तन स्थानीय रूप से बफ़र किए जाते हैं और बिना डेटा हानि के कनेक्शन बहाल होने पर सिंक्रनाइज़ होते हैं।
Apple के अनुसार, iPhone और Apple Watch के बीच सिंक्रनाइज़ेशन विलंब गतिविधि डेटा के लिए 30 सेकंड से कम है। अन्य प्रकारों के लिए — नींद, पोषण, प्रयोगशाला परिणाम — सिंक्रनाइज़ेशन बैटरी बचाने के लिए 15 मिनट तक के अंतराल पर शेड्यूल के अनुसार होता है।
HKHealthStore केंद्रीय सिंगलटन है जिसके माध्यम से सभी ऑपरेशन किए जाते हैं: saveObject के माध्यम से सहेजना, execute के माध्यम से पढ़ना, और deleteObject के माध्यम से हटाना। प्रत्येक ऑपरेशन अतुल्यकालिक है और क्लोजर के माध्यम से परिणाम लौटाता है, जिसके लिए उचित त्रुटि प्रबंधन की आवश्यकता होती है।
क्वेरीज़ कई प्रकारों में विभाजित हैं: HKSampleQuery मानदंडों के अनुसार रिकॉर्ड प्राप्त करने के लिए, HKStatisticsQuery एकत्रित डेटा के लिए — योग, औसत, न्यूनतम, अधिकतम — और HKObserverQuery वास्तविक समय में परिवर्तनों को ट्रैक करने के लिए। आवधिक पृष्ठभूमि अपडेट के लिए, HKHeartbeatSeriesQuery का उपयोग किया जाता है।
let type = HKQuantityType
.quantityType(forIdentifier: .stepCount)
let now = Date()
let start = Calendar.current
.date(
byAdding: .day,
value: -7,
to: now
)
let predicate = HKQuery
.predicateForSamples(
withStart: start,
end: now,
options: .strictStartDate
)
let query = HKSampleQuery(
sampleType: type,
predicate: predicate,
limit: 100
) { _, samples, _ in
for sample in samples as [HKQuantitySample] {
print(sample.quantity)
}
}
healthStore.execute(query)
HealthKit एकीकरण Xcode में HealthKit क्षमता सक्षम करने और प्रोजेक्ट में entitlement जोड़ने से शुरू होता है। उसके बाद, एप्लिकेशन requestAuthorization कॉल के माध्यम से विशिष्ट डेटा प्रकारों तक पहुँच की अनुमति का अनुरोध करता है। महत्वपूर्ण: HealthKit सिम्युलेटर पर उपलब्ध नहीं है और इसके लिए iOS वाले भौतिक उपकरण की आवश्यकता है।
एकीकरण प्रक्रिया में तीन चरण शामिल हैं: डेटा प्रकारों को परिभाषित करना, प्राधिकरण का अनुरोध करना, और पढ़ने और लिखने के संचालन को निष्पादित करना। प्रत्येक चरण अतुल्यकालिक है और त्रुटियों को संभालना चाहिए — उपयोगकर्ता टॉगल वाले सिस्टम डायलॉग में किसी भी डेटा प्रकार तक पहुँच से इनकार कर सकता है।
Apple शोध के अनुसार, HealthKit एकीकरण वाले एप्लिकेशन 40% अधिक उपयोगकर्ता जुड़ाव दिखाते हैं। सफलता का मुख्य कारक प्राधिकरण अनुरोध विवरण में यह समझाना है कि ऐप को विशिष्ट स्वास्थ्य डेटा की आवश्यकता क्यों है।
प्राधिकरण अनुरोध पहले लॉन्च पर एक बार किया जाता है। एप्लिकेशन दो सेट प्रकार निर्दिष्ट करता है — पढ़ने और लिखने के लिए। उपयोगकर्ता प्रत्येक डेटा प्रकार के लिए टॉगल के साथ एक सिस्टम डायलॉग देखता है और अनावश्यक श्रेणियों को अस्वीकार करके चुनिंदा रूप से पहुँच प्रदान कर सकता है।
let typesToWrite: Set = [
HKQuantityType
.quantityType(
forIdentifier: .dietaryEnergyConsumed
)
]
let typesToRead: Set = [
HKQuantityType
.quantityType(
forIdentifier: .stepCount
)
]
healthStore.requestAuthorization(
toShare: typesToWrite,
read: typesToRead
) { success, error in
if success {
print("प्राधिकरण प्राप्त हुआ")
}
}
HealthKit एक बहु-स्तरीय सुरक्षा मॉडल लागू करता है जिसमें हार्डवेयर एन्क्रिप्शन, एप्लिकेशन सैंडबॉक्सिंग और दानेदार अनुमतियाँ शामिल हैं। सभी स्वास्थ्य डेटा डिवाइस पर एन्क्रिप्टेड संग्रहीत होते हैं और उपयोगकर्ता की अलग सहमति के बिना iCloud को प्रेषित नहीं किए जाते हैं, जो एक बार अनुरोध किया जाता है।
एक मुख्य विशेषता Intent तंत्र है: एप्लिकेशन के पास डेटा तक निरंतर पृष्ठभूमि पहुँच नहीं है। प्रत्येक पढ़ने या लिखने का अनुरोध ऑपरेटिंग सिस्टम द्वारा सत्यापित किया जाता है, और उपयोगकर्ता ऐप को पुनः स्थापित किए बिना सेटिंग्स — गोपनीयता — स्वास्थ्य के माध्यम से किसी भी समय अनुमति रद्द कर सकता है।
Apple App Store Review Guidelines में HealthKit के उपयोग को सख्ती से नियंत्रित करता है। एप्लिकेशन स्पष्ट सहमति के बिना HealthKit डेटा को तीसरे पक्ष को स्थानांतरित नहीं कर सकता, विज्ञापन या लक्ष्यीकरण के लिए इसका उपयोग नहीं कर सकता, और इसे घोषित कार्यक्षमता के लिए आवश्यकता से अधिक समय तक संग्रहीत नहीं कर सकता।
HealthKit की कई सीमाएँ हैं: डिवाइस पर अधिकतम डेटाबेस आकार 1 GB है, एकल क्वेरी में रिकॉर्ड की सीमा 1000 है, और समान डेटा प्रकारों के बीच न्यूनतम अंतराल 1 सेकंड है। फ्रेमवर्क पृष्ठभूमि अपडेट को भी सीमित करता है — प्रति दिन 60 से अधिक HKObserverQuery ट्रिगर नहीं।
ये सीमाएँ प्रदर्शन द्वारा ऑफ़सेट होती हैं: 1000 रिकॉर्ड पढ़ना औसतन 50–100 मिलीसेकंड लेता है, और एक रिकॉर्ड लिखने में 10 मिलीसेकंड से कम समय लगता है। बड़े डेटा वॉल्यूम के लिए, अलग-अलग रिकॉर्ड प्राप्त करने के बजाय पूर्व-एकत्रीकरण के साथ HKStatisticsCollectionQuery का उपयोग करने की अनुशंसा की जाती है। HealthKit क्वेरीज़ को अतुल्यकालिक रूप से संसाधित करता है — एप्लिकेशन HKHealthStore से डेटा की प्रतीक्षा करते समय अवरुद्ध नहीं होता है।
अक्सर पूछे जाने वाले प्रश्न
HealthKit iOS 8 और नए वाले सभी उपकरणों पर समर्थित है, जिसमें iPhone, iPad और iPod touch शामिल हैं। Apple Watch स्वचालित रूप से युग्मित iPhone के माध्यम से डेटा भेजता है। तृतीय-पक्ष उपकरण — फिटनेस बैंड, तराजू, रक्तचाप मॉनिटर — संबंधित एप्लिकेशन होने पर HealthKit API के माध्यम से डेटा लिख सकते हैं।
हाँ, स्वास्थ्य ऐप “स्वास्थ्य डेटा निर्यात करें” फ़ंक्शन के माध्यम से सभी डेटा को XML प्रारूप में निर्यात करने की अनुमति देता है। डेवलपर HKSampleQuery के माध्यम से किसी भी अनुमत प्रकार को प्रोग्रामेटिक रूप से पढ़ सकते हैं और अपने प्रारूप में निर्यात कर सकते हैं। स्पष्ट उपयोगकर्ता सहमति के बिना स्वास्थ्य डेटा तीसरे पक्ष के सर्वर पर स्थानांतरित नहीं किया जा सकता है।
उपयोगकर्ता स्वास्थ्य ऐप या स्रोत एप्लिकेशन के माध्यम से डेटा हटा सकता है जिसने इसे रिकॉर्ड किया था। हटाने के बाद, डेटा पुनर्स्थापित नहीं किया जा सकता — HealthKit में कोई ट्रैश बिन नहीं है। हटाने का ऑपरेशन अपरिवर्तनीय है, इसलिए एप्लिकेशन को deleteObject निष्पादित करने से पहले पुष्टि का अनुरोध करने की अनुशंसा की जाती है।
HealthKit उपयोगकर्ता के स्वास्थ्य डेटा को संग्रहीत और साझा करने के लिए डिज़ाइन किया गया है, जबकि ResearchKit चिकित्सा अनुसंधान करने के लिए एक फ्रेमवर्क है। ResearchKit HealthKit को अपने डेटा स्रोतों में से एक के रूप में उपयोग करता है, लेकिन शोध डेटा एकत्र करने के लिए सूचित सहमति, प्रश्नावली और सक्रिय कार्यों के मॉड्यूल जोड़ता है।
हाँ, HealthKit का उपयोग करने वाले एप्लिकेशन को App Store Review Guidelines, अनुभाग 5.1.1 — चिकित्सा और स्वास्थ्य डेटा का पालन करना होगा। एप्लिकेशन में डेटा उपयोग का स्पष्ट विवरण, गोपनीयता नीति, डेटा के विज्ञापन उपयोग पर प्रतिबंध और नेटवर्क ट्रांसमिशन के दौरान एन्क्रिप्शन आवश्यक है।
सारांश
हम एक मोबाइल एप्लिकेशन टर्नकी विकसित करेंगे
IT Sectr 2017 से स्टार्टअप और व्यवसायों के लिए iOS और Android एप्लिकेशन बनाता है। हम आपको सलाह देंगे और सर्वोत्तम समाधान प्रस्तावित करेंगे।
यह भी पढ़ें