2012-10-18 9 views
5

। मैं आईओएस 4 एस, आईफोन 5, आईपैड 3 आईओएस 5.1 के साथ और ऊपर बीएलई 4.0 का समर्थन करता हूं। और मैंने ऐप्पल से नमूना कोड तापमान सेंसर पढ़ा। मेरा सवाल है सेंसर के लिए आवश्यकता क्या है? दूसरे शब्दों में, इस एप्लिकेशन में किस प्रकार के सेंसर लगाए जा सकते हैं? क्या बीईएल 4.0 का समर्थन करने वाले सभी डिवाइस मेरे आईओएस डिवाइस में जुड़े हुए हैं जो बीएलई 4.0 का समर्थन करते हैं?क्या बीईएल 4.0 का समर्थन करने वाले सभी डिवाइस मेरे आईओएस डिवाइस में जुड़े हुए हैं जो बीएलई 4.0 का समर्थन करते हैं? ब्लूटूथ कम ऊर्जा के बारे में

उत्तर

10

बीएलई संचार जीएटीटी (सामान्य गुण) पर आधारित है, जो अनिवार्य रूप से एक सेवा के तहत विभिन्न विशेषताओं के मूल्यों का आदान-प्रदान है। यदि आपने तापमान सेंसर नमूना कोड पढ़ लिया है, तो आपने देखा होगा कि यह सेवा UUID के अनुसार डिवाइसों को खोजना शुरू कर देता है, और तब सेवा के तहत यूयूआईडी पर आधारित विशेषताओं को पढ़/लिखना शुरू कर देता है। इसलिए, जब तक सेंसर बीएलई का समर्थन करता है और आप इसकी सेवाओं (इसकी यूयूआईडी, इसकी विशेषताओं और गुणों) के बारे में जानते हैं, तो आप इसके साथ संवाद करने के लिए अपने आईओएस ऐप को प्रोग्राम कर सकते हैं। कुछ सेवाएं ब्लूटूथ एसआईजी द्वारा 'पूर्व परिभाषित' हैं, इसलिए आप Bluetooth SIG website पर इन सेवाओं की जानकारी पा सकते हैं।

+0

यूआईआईडी के बारे में एक बात बहुत स्पष्ट नहीं है। क्या आपका मतलब है कि कनेक्ट करने से पहले मुझे बीएलई डिवाइस (सेंसर) के यूयूआईडी को जानना है? विभिन्न बीएलई उपकरणों में अलग यूयूआईडी हैं? या एक और शब्द में जब मैं एक नया बीएलई डिवाइस खरीदता हूं, तो उसे इसके साथ यूयूआईडी प्रदान करना चाहिए ताकि मैं इसे जोड़ने से पहले अपने प्रोग्राम में आईडी जोड़ सकूं? धन्यवाद। –

+6

@bagusflyer बीएलई में, सब कुछ (डिवाइस, सेवा, विशेषता) एक यूयूआईडी असाइन किया गया है। लेकिन आपको उनसे कनेक्ट करने के लिए डिवाइस UUID को जानने की आवश्यकता नहीं है। इसके बजाए, आप हमेशा आस-पास के उपकरणों को स्कैन कर सकते हैं और उनसे कनेक्ट कर सकते हैं, और उसके बाद उस परिधीय सेवा को स्कैन कर सकते हैं। लेकिन यह सेवा आपके लिए सेवा प्रदान करने वाले लोगों की पहचान करने के लिए यूयूआईडी जानना बुद्धिमान होगा। उदाहरण के लिए, यदि आप जानते हैं कि सेवा 'तापमान' के लिए यूयूआईडी 0xabcd है, तो आप केवल उन परिधीय से निपट सकते हैं जो सेवा खरीदते हैं 'स्कैनफोरपीरफेरल्सविथ सर्विसेज:' यूयूआईडी 0xabcd के साथ इस फ़ंक्शन के लिए तर्क के रूप में। –

+0

आपकी सलाह के लिए धन्यवाद। बहुत साफ़। –

8

हां, आप किसी भी बीएलई डिवाइस को एक बीएलई समर्थित आईओएस डिवाइस से कनेक्ट कर सकते हैं।

उदाहरण कोड के बारे में आप बात कर रहे हैं के संबंध में, यह तापमान सेंसरों के लिए एक विशिष्ट सेवा UUID के लिए लग रहा है:

[centralManager scanForPeripheralsWithServices:uuidArray options:options]; 

होने के नाते के रूप में वहाँ के बाजार पर कोई तापमान सेंसरों कि मैं मिल सकता है कर रहे हैं, तो आप किसी भी और सभी उपकरणों के लिए स्कैन करने के लिए नहीं के बराबर का उपयोग करना चाहते हो सकता है:

[centralManager scanForPeripheralsWithServices:nil options:options]; 

इस के साथ प्रयोग करने के लिए, आप अनुप्रयोग का उपयोग कर सकते LightBlue या iTunes Link आप किसी भी सेवा/विशेषताओं के साथ एक परिधीय में अपने iPhone बारी की सुविधा देता है जो आप परिभाषित करते हैं।