2013-05-03 17 views
8

मैंने एनएसटीमर का उपयोग 1 सेकंड के बाद एक विधि को कॉल करने के लिए किया था जब ऐप पृष्ठभूमि में जाता है और लगभग 17 मिनट टाइमर काम करना बंद कर देता है।एनएसटीमर कुछ समय बाद पृष्ठभूमि में बंद हो जाता है

जब यह वापस आया तो यह फिर से काम करना शुरू कर दिया, इसलिए कृपया मुझे बताएं कि यह क्यों हो रहा है और इस मुद्दे को कैसे हल किया जाए।

मैंने उसी उद्देश्य के लिए रिकर्सन में देरी के साथ प्रदर्शन चयनकर्ता का उपयोग करने का भी प्रयास किया, लेकिन फिर एक ही परिणाम दे रहा था। कृपया कोई समाधान सुझाएं। किसी भी मदद की पूरी तरह से सराहना की जाएगी।

+0

टाइमर क्या करता है? मेरा मतलब है, सेब के अनुमति वाले पृष्ठभूमि कार्यों में से एक है? – jcesarmobile

+0

क्या आपने अपने निर्माण लक्ष्य गुणों में "आवश्यक पृष्ठभूमि मोड" सेट किए हैं? –

+0

मैंने अपने आवश्यक पृष्ठभूमि मोड में "स्थान अपडेट के लिए ऐप रजिस्टर" जोड़ा है – Himanshu

उत्तर

6

वियर्ड मुद्दा- मेरे पास भी यह था, लेकिन निम्नलिखित मेरे लिए काम किया।

//Run the timer on the runloop to ensure that it works when app is in background 

    [[NSRunLoop currentRunLoop]addTimer:self.timer forMode: NSDefaultRunLoopMode]; 
+1

मैंने इसका उपयोग किया है लेकिन फिर भी टाइमर पृष्ठभूमि में लगभग 16 मिनट के बाद बंद हो जाता है – Himanshu

+0

कृपया इसे देखें और अगर यह काम करता है तो मुझे बताएं। http://stackoverflow.com/questions/8449351/iphone-4-is-there-an-absolutely-certain-way-to-have-a-long-term-nstimer-fire?rq=1 – Xcoder

+0

@ हिमांशु: है आपकी समस्या हल हो गई है। मुझे एक ही समस्या का सामना करना पड़ रहा है .. – Ankur

5

Implementing Long-Running Background Tasks से:

कार्यों कि अधिक निष्पादन समय की आवश्यकता होती है लागू करने के लिए, आप बिना उनके निलंबित किया जा रहा पृष्ठभूमि में उन्हें चलाने के लिए विशेष अनुमतियां अनुरोध करना होगा के लिए। आईओएस में, केवल विशिष्ट एप्लिकेशन प्रकार पृष्ठभूमि में चलने की अनुमति दी जाती है:

  • ऐसे ऐप्स जो उपयोगकर्ता के लिए श्रव्य सामग्री को चलाने जबकि इस तरह के एक म्यूजिक प्लेयर एप्लिकेशन के रूप में पृष्ठभूमि, में
  • Apps का है कि उपयोगकर्ताओं को रखने के बारे में सूचित उनके कि इंटरनेट प्रोटोकॉल (वीओआईपी)
  • न्यूज़स्टैंड एप्लिकेशन से अधिक आवाज का समर्थन इस तरह के एक नेविगेशन एप्लिकेशन
  • Apps के रूप में हर समय,
  • एप्लिकेशन जो बाहरी सामान
  • से नियमित रूप से अपडेट प्राप्त डाउनलोड करने और नई सामग्री की प्रक्रिया पूरी की है कि कम से स्थान
0

कुछ ही मिनटों के लिए पर्याप्त नहीं है, तो आप जहां एक से कोई एप्लिकेशन रन अनंत समयजब तक इसे इस्तेमाल करता है नहीं कर सकते हैं:

  • ऑडियो प्लेबैक
  • स्थान सेवाएं
  • बाहरी सहायक

आप अन्य 12 ऐप्स के लिए चलने का समय प्राप्त करने के लिए पृष्ठभूमि कार्य का उपयोग कर सकते हैं, या उपयोगकर्ता को सूचित करने के लिए स्थानीय नोटिफिकेशन का उपयोग कर सकते हैं।

+0

मैं पृष्ठभूमि मोड के लिए स्थान सेवाओं का उपयोग कर रहा हूं लेकिन अभी भी टाइमर स्टॉप – Himanshu

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