2013-08-15 5 views
24

मैं एक ऐप सेट अप करने की कोशिश कर रहा हूं जो पृष्ठभूमि में लोगों के स्थानों की जांच करने में सक्षम होगा, देखें कि वे किसी दिए गए स्थान पर हैं या नहीं, और अगर वे हैं तो एक सर्वर को एक पिंग भेजें। हम अपने उपयोगकर्ताओं की ऊर्जा को निकालना नहीं चाहते हैं, इसलिए हम सबसे अच्छे समाधान को समझने का प्रयास कर रहे हैं।CLLocationManager geo-fencing/startMonitoringForRegion: vs. startMonitoringForSignificantLocationChanges: बनाम 10 मिनट की शुरुआत कॉल अपडेट करना

मैंने काफी पढ़ा है और मुझे इन तरीकों पर बहुत अधिक जानकारी नहीं मिली है। मैं के रूप में मैं उन्हें अभी समझ में

startMonitoringForSignificantChanges पक्ष-विपक्ष के बुनियादी अपग्रेड

विवरण: वाई-फाई और सेल टॉवर के आधार पर बदल जाता है सिस्टम एप्लिकेशन जाग।

Docs: डिवाइस अपने पिछले नोटिफिकेशन से 500 मीटर या उससे अधिक ले जाता है के रूप में

Apps के रूप में जल्द ही एक अधिसूचना उम्मीद कर सकते हैं। यह अधिसूचनाओं की अपेक्षा नहीं करनी चाहिए, हर पांच मिनट में एक बार से अधिक बार। यदि डिवाइस नेटवर्क से डेटा पुनर्प्राप्त करने में सक्षम है, तो स्थान प्रबंधक पर समय-समय पर अधिसूचनाएं वितरित करने की अधिक संभावना है।

सकारात्मक:

  • अधिकांश बैटरी कुशल

विपक्ष:

वाई-फाई/सेल टॉवर पर
  • निर्भर बदलता है
  • केवल मान सकते हैं कि यह हो जाएगा प्रत्येक 200 मीटर से 2 किमी (यदि कुछ क्षेत्रों में अधिक नहीं है) कहा जाता है
  • More on accuracy
  • इस प्रकार, असंगत और अनिश्चित

10-minute start-updating या "n मिनट अद्यतन करने":

विवरण: यह मूल रूप से, और अधिक समय के लिए एप्लिकेशन पूछता है कि अतिरिक्त समय के बारे में है समाप्त होने के लिए, यह [self.locationManager startUpdating] को कॉल करता है, स्थान पकड़ता है और पृष्ठभूमि धागे को 10 और मिनट तक बढ़ाता है।

सकारात्मक:

  • अनुरूप
  • के रूप में सही रूप में आप इसे के रूप में लगातार आप यह चाहते हैं

विपक्ष होना चाहते हो सकता है:

  • क्या करना है ऐप को पृष्ठभूमि में चलाने के लिए प्रत्येक दस मिनट या उससे कम कॉल (यानी n कॉल के लिए 10 से अधिक नहीं हो सकता है)

प्रश्न: बैटरी पर इसका क्या प्रभाव पड़ता है? क्या जीपीएस जाग रहा है और इसे बंद कर बैटरी को और अधिक चोट पहुंचाता है? मैं कल्पना नहीं कर सकता था कि पृष्ठभूमि में एक संक्षिप्त स्थान जांच चलाने से बैटरी बहुत अधिक हो जाएगी ... लेकिन फिर, मुझे नहीं पता कि जीपीएस को पावर करने और उपयोग करने योग्य संकेत प्राप्त करने में क्या होता है।

startMonitoringForRegion (भू-बाड़ लगाने):

सीधे शब्दों में कहें, तो आपका ऐप उठ हो जाता है जब आप एक पूर्व निर्धारित क्षेत्र में दर्ज करें। यह उनकी अजीब बात है, यह हाल ही में है और इसमें कम दस्तावेज है। मुझे सीमा पार करने "सिस्टम मॉनीटर" कैसे एक अच्छा विवरण नहीं मिल रहा है। सभी के लिए मुझे पता है कि यह वास्तव में कुछ स्मार्ट एल्गोरिदम है, या वे लगातार जीपीएस पिंग कर रहे हैं जो इसे करने के लिए अन्य तरीकों से कम प्रभावी बना देगा।

सकारात्मक:

  • सरल कार्यान्वयन
  • प्रणाली द्वारा प्रबंधित ताकि आप अपने आविष्कार करने के लिए तदर्थ भू-बाड़ केवल सीमा पार करने पर चलाता है ... कोई अनावश्यक डेटा बस फेंक की जरूरत नहीं है बाहर एक बैटरी के बदले में मारा
  • इस प्रकार, बात है, सही की इस तरह, सिस्टम द्वारा प्रबंधित

विपक्ष के लिए सबसे अच्छा होना चाहिए:

चाहे या नहीं यह बैटरी जीवन के लिए अच्छा है पर या अगर बहुत यह नालियों बैटरी जीवन
  • People question its effectiveness
  • विशाल विरोध करता है।
  • सिस्टम इसकी निगरानी कैसे कर रहा है !?
  • असल में, अनिश्चित व्यवहार। पृष्ठभूमि में परीक्षण उपयोगकर्ता स्थान के इन अन्य तरीकों की तुलना में जब यह बैटरी जीवन, स्थिरता, और परिशुद्धता की बात आती है:

मैं अपने सवाल यह है कि करता है startMonitoringForRegion करने पर निर्भर करता है लगता है। क्या किसी ने इसका पूरी तरह से परीक्षण किया है? या इसे अपने ऐप में इस्तेमाल किया और कम से कम कुछ फीडबैक प्राप्त किया? संभावना है कि, मेरे उद्देश्यों के लिए, व्यापार-बंद भू-बाड़ लगाने और 10 मिनट की अद्यतन विधि के बीच है। (आईओएस 7 के बारे में ऐप्पल ने सार्वजनिक रूप से जो कहा है, उसके अलावा कुछ पृष्ठभूमि कार्य भी होंगे ... क्या यह इन दो तरीकों के बीच व्यापार-बंद के लिए गणित को बदल देगा?) क्या किसी के पास यह विचार है कि इन दोनों की तुलना कैसे की जाती है?

बहुत बहुत धन्यवाद! यह देखने के लिए तत्पर हैं कि क्या हम इन तरीकों की तुलना करने के तरीके के नीचे पहुंच सकते हैं।

+0

+1 एक साफ सिंहावलोकन के लिए –

उत्तर

16

मैं 2 साल के लिए जीपीएस का उपयोग कर वाहन ट्रैकिंग पर काम कर रहा हूं। बहुत कठिन तरीका सीख लिया ... मेरे अनुभव में शुरू करें मॉनिटरिंगफोररियन या जियो-बाड़ लगाना सेल परिवर्तन घटनाओं पर निर्भर करता है, किया गया है या किया गया है घटनाओं को तब तक नहीं चलाया जाता जब तक सेल/वाईफाई परिवर्तन घटना न हो। तो यह कोई फर्क नहीं पड़ता w.r.t बैटरी खपत। हालांकि यह अतिरिक्त गणना करता है जो इस बात पर निर्भर करता है कि वर्तमान में कितने क्षेत्रों की निगरानी की जा रही है। यहां तक ​​कि ऐप्पल के रिमाइंडर ऐप भी स्थान आधारित अनुस्मारक के लिए अच्छे नतीजे नहीं देता है क्योंकि यह भू-बाड़ लगाने का उपयोग करता है।

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

यदि मैं आप थे, तो मैं 5 सेकंड के लिए प्रत्येक 10 मिनट के बाद केसीएलएलोकेशन के साथ जीपीएस को सक्रिय करने के लिए जाउंगा। (या केसीएलएलोकेशनएक्वायरसीएरेस्टटेनमीटर कम बैटरी का उपयोग करने के लिए, अगर सटीकता इतना महत्वपूर्ण नहीं है) और दूरी-फ़िल्टर = 5 (मीटर) । इस मामले में बैटरी खपत अनजान होगी। आप समान सेटिंग्स के साथ खेल सकते हैं जो आपके विशिष्ट मामले को संबोधित कर सकते हैं और आखिरकार यह पता लगा सकते हैं कि आप सबसे अच्छे हैं।

बीटीडब्ल्यू: आईफोन एजीपीएस का उपयोग करता है, ए-जीपीएस अतिरिक्त सिग्नल स्थितियों में उपग्रहों का पता लगाने और उपयोग करने के लिए नेटवर्क संसाधनों का उपयोग करता है। इसलिए, जब आप स्टार्टअपडेटेशन लेते हैं तो यह आस-पास की सेल टावर जानकारी का भी उपयोग करेगा। http://en.wikipedia.org/wiki/Assisted_GPS

+1

बहुत बहुत उपयोगी और सहायक उत्तर के लिए बहुत बहुत धन्यवाद! – AdamG

+0

मैं अपने ऐप में भू-बाड़ लगाने का तरीका कैसे कर सकता हूं IOS – sabir

+0

पर नया नया है कृपया इस प्रश्न को जांचें http://stackoverflow.com/questions/9946952/ios-5-region-monitoring-can-new-regions-be-created- आधारित-ऑन-यूजर-वर्तमान-समन्वय/10429867 # 10429867 और http://stackoverflow.com/questions/21850536/number-of-region-monitored-by-regionmonitoring-based-on-users-current-locatio – Zee

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