मैं अपने iOS एप्लिकेशन में प्रत्येक n मिनट में बैकग्राउंड लोकेशन अपडेट प्राप्त करने का तरीका ढूंढ रहा हूं। मैं आईओएस 4.3 का उपयोग कर रहा हूं और समाधान गैर-जेलब्रेक आईफ़ोन के लिए काम करना चाहिए।
मैंने निम्नलिखित विकल्पों की कोशिश की / विचार किया:
CLLocationManager startUpdatingLocation/startMonitoringSignificantLocationChanges
: यह पृष्ठभूमि में कॉन्फ़िगर किए गए गुणों के आधार पर अपेक्षित रूप से काम करता है, लेकिन हर n मिनट में स्थान को अपडेट करने के लिए इसे मजबूर करना संभव नहीं लगता हैNSTimer
: ऐप तब काम करता है जब ऐप अग्रभूमि में चल रहा होता है लेकिन पृष्ठभूमि कार्यों के लिए डिज़ाइन नहीं किया जाता है- स्थानीय सूचनाएं: स्थानीय सूचनाएं हर n मिनट में निर्धारित की जा सकती हैं, लेकिन वर्तमान स्थान (अधिसूचना के माध्यम से ऐप लॉन्च करने वाले उपयोगकर्ता के बिना) के लिए कुछ कोड निष्पादित करना संभव नहीं है। यह दृष्टिकोण भी एक स्वच्छ दृष्टिकोण नहीं है क्योंकि यह वह नहीं है जिसके लिए सूचनाओं का उपयोग किया जाना चाहिए।
UIApplication:beginBackgroundTaskWithExpirationHandler
: जहां तक मैं समझता हूं, इसका उपयोग पृष्ठभूमि में कुछ काम को समाप्त करने के लिए किया जाना चाहिए (समय में भी सीमित) जब किसी ऐप को "लंबे समय से चल रही" पृष्ठभूमि प्रक्रियाओं को लागू करने के बजाय पृष्ठभूमि में ले जाया जाता है।
मैं इन नियमित पृष्ठभूमि स्थान अपडेट को कैसे लागू कर सकता हूं?