2012-05-19 3 views
5

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

इसलिए मुझे मध्यरात्रि में अपने ऐप पर चलाने के लिए एक विधि निर्धारित करने की आवश्यकता है, भले ही ऐप पृष्ठभूमि में हो। यह विधि सर्वर के साथ एकत्रित डेटा को सिंक करेगी और कोई भी परिवर्तन डाउनलोड करेगी।

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

धन्यवाद दोस्तों!

+0

पर आप इस के लिए किसी भी समाधान मिला? –

उत्तर

0

मुझे नहीं लगता कि आपका ऐप या आप जो करने की कोशिश कर रहे हैं वह लंबे समय तक चलने वाले पृष्ठभूमि कार्य के लिए ऐप्पल की आवश्यकता के लिए योग्य है। Apple.

+0

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

2

से इस दस्तावेज़ के "लंबे समय तक चलने वाले पृष्ठभूमि कार्यों को कार्यान्वित करें" अनुभाग देखें, आप UILocalNotifications को देख सकते हैं। आप उस घटना को होने के लिए शेड्यूल कर सकते हैं और उसके बाद बैज आइकन सेट कर सकते हैं ताकि उपयोगकर्ता को यह संसाधित हो सके (या नहीं)।

जानकारी इन HERE

+0

मैं नहीं चाहता कि उपयोगकर्ता डेटा सिंक के बारे में कुछ भी जान सके, तो आदर्श रूप से मैं (ए) मध्यरात्रि के लिए स्थानीय अधिसूचना शेड्यूल करता हूं, फिर (बी) मध्यरात्रि में जब अधिसूचना कोड चलता है तो मैं डेटा सिंक कर सकता हूं और नहीं बढ़ा सकता स्क्रीन पर कोई अधिसूचना। क्या यह ध्वनि व्यवहार्य है? या स्थानीय अधिसूचनाओं का उपयोग करने के लिए मुझे स्क्रीन पर एक चेतावनी उठाना है? – theDuncs

+0

आपकी मदद के लिए धन्यवाद, वैसे! बहुत सराहना की। – theDuncs

+0

मुझे लगता है कि आप ऐसा कर सकते हैं जो आप उपयोगकर्ता को दृश्य संकेतक के बिना करने की कोशिश कर रहे हैं। –