मेरे पास एक ऐप है जो startMonitoringForRegion:
और startMonitoringSignificantLocationChanges
के संयोजन का उपयोग करता है ताकि यह पता चल सके कि उपयोगकर्ता पृष्ठभूमि में ऐप कहां है। क्या इसका मतलब है कि में UIBackgroundModes
कुंजी के लिए मुझे location
मान शामिल करने की आवश्यकता है?UIBackgroundModes स्थान और क्षेत्र की निगरानी के साथ महत्वपूर्ण स्थान परिवर्तन
महत्वपूर्ण परिवर्तन स्थान सेवा अत्यधिक क्षुधा है कि उच्च परिशुद्धता स्थान डेटा की जरूरत नहीं है के लिए सिफारिश की है:
यह डॉक्स से एक उद्धरण है। इस सेवा के साथ, स्थान अपडेट केवल तब उत्पन्न होते हैं जब उपयोगकर्ता का स्थान महत्वपूर्ण रूप से बदलता है; इस प्रकार, यह सामाजिक ऐप्स या ऐप्स के लिए आदर्श है जो उपयोगकर्ता को गैर-कृत्रिम, स्थान-प्रासंगिक जानकारी प्रदान करते हैं। यदि कोई अपडेट होता है तो ऐप को निलंबित कर दिया जाता है, तो सिस्टम अद्यतन को संभालने के लिए पृष्ठभूमि में इसे जगाता है। यदि ऐप इस सेवा को शुरू करता है और फिर इसे समाप्त कर दिया जाता है, तो एक नया स्थान उपलब्ध होने पर सिस्टम स्वचालित रूप से ऐप को फिर से लॉन्च करता है। यह सेवा आईओएस 4 और बाद में उपलब्ध है, और यह केवल उन उपकरणों पर उपलब्ध है जिनमें सेलुलर रेडियो होता है।
...
कि उपयोगकर्ता (तब भी जब पृष्ठभूमि में) करने के लिए निरंतर स्थान अद्यतन प्रदान करता है अपने Info.plist फ़ाइल में UIBackgroundModes कुंजी (स्थान मूल्य के साथ) शामिल करके पृष्ठभूमि स्थान सेवाओं को सक्षम कर सकते हैं कोई एप्लिकेशन । UIBackgroundModes कुंजी में इस मान को शामिल करने से सिस्टम को ऐप को निलंबित करने से रोक नहीं दिया जाता है, लेकिन यह सिस्टम को बताता है कि जब भी नया स्थान डेटा वितरित किया जाता है तो उसे ऐप को जगा जाना चाहिए। इस प्रकार, जब भी वे होते हैं, तो यह कुंजी प्रभावी ढंग से ऐप को पृष्ठभूमि अपडेट को संसाधित करने देती है।
इस बात का मेरे व्याख्या यह है कि UIBackgroundModes
कुंजी के लिए location
मूल्य केवल आवश्यक है यदि अनुप्रयोग एक बैठे एनएवी एप्लिकेशन की तरह है, निरंतर स्थान अद्यतन की जरूरत है।
मैंने location
के बिना UIBackgroundModes
कुंजी के लिए डिवाइस पर ऐप चलाने का भी प्रयास किया है और यह महत्वपूर्ण स्थान परिवर्तनों की रिपोर्ट करना जारी रखता है और जब कोई क्षेत्र बाहर निकलता है।
इसके अलावा, का एकमात्र स्थान CLLocationManager Class Reference में उल्लिखित है startUpdatingLocation
चर्चा में है, जिसका मैं उपयोग नहीं कर रहा हूं।
मेरा मतलब था कि मैं 'startUpdatingLocation' का उपयोग नहीं कर रहा हूं। आपके उत्तर के लिए बहुत बहुत धन्यवाद! –
आह, मुझे मिल गया, क्षमा करें। –
@AdamSwinden मैं अपने ऐप में क्षेत्र की निगरानी का उपयोग कर रहा हूं, और स्थान अपडेट के लिए पृष्ठभूमि मोड पर, इसलिए यदि मुझे पृष्ठभूमि मोड का उपयोग करना है तो मुझे समीक्षाकर्ता को क्या कहना है। –