2011-07-21 17 views
6

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

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

किसी को भी मुझे क्या वजह से applicationWillResignActive चयनकर्ता के नाम से जाना निर्धारित करने के लिए एक तरह से यह पता लगाने में मदद कर सकते हैं?

कई धन्यवाद, मेसन

+0

क्या आप सब UIApplication राज्य यहाँ परिवर्तन के माध्यम से जाँच? http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIApplicationDelegate_Protocol/Reference/Reference.html#//apple_ref/occ/intf/UIApplicationDelegate – Luke

+0

@Luke, हाँ मैंने किया था। मैं भी [इस] (के माध्यम से http://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/CoreApplication/CoreApplication.html#//apple_ref/doc/uid/TP40007072-CH3-SW10 पढ़) खंड _ के तहत रुकावट_ के लिए उत्तरदायी लेकिन मेरी समस्या को हल करने के लिए कुछ भी उपयोगी नहीं मिला। – jmason

+0

@Luke इसके अलावा, जब मैं applicationWillResignActive में UIApplicationState जाँच की वर्तमान स्थिति थी * UIApplicationStateActive * – jmason

उत्तर

5

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

बाहर की जाँच करें इस लिंक जहां यह चरणों विवरण मल्टीटास्किंग लेता है।

http://www.cocoanetics.com/2010/07/understanding-ios-4-backgrounding-and-delegate-messaging/

गुड लक, आप एक भयानक पुरुष की तरह लग! NSNotification.Name.UIApplicationDidEnterBackground

यह ट्रिगर नहीं है:

+2

दरअसल आप विशेष रूप से यह नहीं बता सकते कि इस्तीफा कॉल का कारण क्या है लेकिन मुझे अपने परिदृश्य के लिए एक काम मिल गया। जब कोई डिवाइस लॉक हो जाता है, तो AVFoundation किसी के प्रतिनिधि को कैप्चर किए गए फ़्रेम भेजना बंद कर देता है। तो जब मैं वीडियो कॉल कर रहा हूं, तो मुझे पता है कि डिवाइस लॉक हो जाएगा जब मैं इच्छा के बाद नए फ्रेम प्राप्त करना बंद कर दूंगा। धन्यवाद जेम्स, आप _are_ एक बहुत बढ़िया आदमी है। – jmason

0

मेरे मामले में मैं वीडियो पर कब्जा NSNotification.Name.UIApplicationWillResignActive

अब

रोक रहा था, मैं उपयोग कर रहा हूँ जब कोई संदेश आता है, या यदि कोई कैप्चरिंग डिवाइस पर कॉल कर रहा है।

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