2013-04-08 7 views
6

बंद हो गया है मेरे पास कोड है जो मेरे आईफोन पर एक भूगर्भ बनाता है जो निष्पादित होने पर निष्पादित करने के लिए कुछ कोड ट्रिगर करेगा। हालांकि, मुझे पता चला है कि जब मैंने वाईफाई को बंद कर दिया है तो एक्सीट्रिगियन कभी ट्रिगर नहीं होता है। क्या आईओएस पर क्षेत्र परिवर्तनों की निगरानी के लिए वाईफाई आवश्यक है? मेरी वांछित सटीकता kCLLocationAccuracyHundredMeters पर सेट है। मैं आईओएस 6.1 और iPhone 4.आईओएस - वाईफाई के साथ जियोफेनिंग

पर परीक्षण कर रहा हूँ यहाँ स्थान निगरानी की स्थापना के लिए मेरे कोड है:

- (id)init { 
self = [super init]; 
if (self) { 
    CLLocationManager *manager = [[CLLocationManager alloc] init]; 
    manager.delegate = self; 
    manager.desiredAccuracy = kCLLocationAccuracyHundredMeters; 
    manager.distanceFilter = RADIUS/10.0; 
    manager.headingFilter = kCLHeadingFilterNone; 
    self.locationManager = manager; 
    self.authorizationStatus = [CLLocationManager authorizationStatus]; 
} 
return self; 
} 

धन्यवाद

उत्तर

11

आईओएस डिवाइस उपयोगकर्ता स्थान खोजने के लिए तीन विधियों का उपयोग करते हैं। से (आमतौर पर) सबसे सटीक कम से कम सही करने के लिए वे हैं:

  1. जीपीएस हार्डवेयर
  2. आसपास के WiFi नेटवर्क
  3. मोबाइल टॉवर त्रिकोणीयकरण

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

विशिष्ट दहलीज दूरी हार्डवेयर और स्थान प्रौद्योगिकियों कि वर्तमान में उपलब्ध हैं द्वारा निर्धारित कर रहे हैं:

यहाँ Location Awareness Programming Guide से प्रासंगिक दस्तावेज है। उदाहरण के लिए, यदि वाई-फाई अक्षम है, तो क्षेत्र की निगरानी काफी कम सटीक है। हालांकि, परीक्षण उद्देश्यों के लिए, आप मान सकते हैं कि न्यूनतम दूरी लगभग 200 मीटर है।

तो, वाईफ़ाई क्षेत्र की निगरानी में काम करने के लिए आवश्यक नहीं है, लेकिन यह साथ सक्षम, अपने डिवाइस का निर्धारण उपयोगकर्ता एक क्षेत्र के geofence पार कर गया है या नहीं, में एक बेहतर मौका होगा।

+0

निश्चित रूप से सही है। आप सिस्टम सेटिंग में वाईफाई को कभी भी बंद नहीं कर सकते हैं, यहां तक ​​कि आप वाईफ़ाई का उपयोग नहीं कर रहे हैं। – Jacky

+0

@ जैकी - मैं आईओएस 7 पर अपने आईफोन पर वाई-फाई बंद कर सकता हूं। मैं नीचे के किनारे से ऊपर की ओर जाता हूं, और मेरे पास नियंत्रण केंद्र है। फिर मैं वाई-फाई प्रतीक (एयरपोर्ट) टॉगल करता हूं। –

+0

क्या कोई ऐप तीनों में से केवल कुछ विशिष्ट तरीकों का उपयोग करना चुन सकता है? ऐप सिटीमैपर का कहना है कि इसका भूगर्भिक जीपीएस चिप का उपयोग नहीं करता है। क्या यह संभव है ? –

2

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

इसके अलावा, यदि आपके पास जीपीएस (आईफोन या सिम के साथ आईपैड) है तो वाईफाई को जियोफ़ेंस फ़ंक्शन के लिए आवश्यक नहीं है।

+2

अरे, हाँ, मैं इसे बाहर परीक्षण कर रहा हूं, अंदर नहीं। मैंने इसे चारों ओर घूमकर परीक्षण किया है जहां मुझे भूगर्भ का उल्लंघन करना चाहिए। जब वाईफाई बंद हो जाती है तो यह कभी भी भूगर्भ का उल्लंघन नहीं करती है। मैं समझता हूं कि वाईफाई बंद करने से स्थान सटीकता कम हो जाती है लेकिन उस बिंदु पर नहीं जहां geofencing बस काम नहीं करता है? –

+0

शायद इसका मतलब कुछ चीजें हैं। जब आप सटीकता अंतर की वजह से वाईफाई बंद करते हैं तो आप बाड़ से बाहर निकल चुके हैं, और ऐप्पल ने आपको कॉलबैक नहीं किया है। अजीब चीजें हो सकती हैं। मैं 10 मीटर तक अपनी सटीकता निर्धारित करके इसका परीक्षण करूंगा, फिर वाईफाई और अपने त्रिज्या 100 मीटर के साथ बस जीपीएस का उपयोग करके अपना भूगर्भ सेट करूँगा। और परीक्षण किया गया एक्स्ट्रिटियन ट्रिगर हो गया। – mskw

2

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

संबंधित मुद्दे