2012-11-19 19 views
6

से जब मेरी आईओएस आवेदनलॉन्च बंद iOS एप्लिकेशन स्थानीय अधिसूचना

- (void)application:(UIApplication *)application didReceiveLocalNotification: 
    (UILocalNotification *)notification 

करने के लिए पृष्ठभूमि यह ठीक से प्रतिक्रिया करता है में चल रहा है, लेकिन जब आवेदन बंद कर दिया है यह दुर्घटनाओं और एक SIGKILL त्रुटि देता है।

अगर अधिसूचना प्राप्त होने पर बंद हो तो मैं ऐप के अंदर एक विधि कैसे चला सकता हूं?

उत्तर

1

स्थानीय अधिसूचना प्राप्त होने पर आप ऐप में कोई विधि नहीं चला सकते हैं। अधिसूचना एक चेतावनी, आइकन बैज संख्या, और एक ध्वनि (< 30 सेकंड) का कोई संयोजन प्रदान कर सकती है।

आप अधिसूचना के माध्यम से या अन्य माध्यमों के माध्यम से फिर से अग्रभूमि में आने पर एक विधि चला सकते हैं।

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

विधि application:didReceiveLocalNotification: को तब कहा जाता है जब ऐप को अधिसूचना प्राप्त होती है लेकिन अग्रभूमि में होती है। जब ऐप अग्रभूमि में होता है तो अलर्ट, आइकन बैज नंबर और ध्वनि ट्रिगर नहीं की जाएगी।

5

जब आप ऐप बंद हो जाते हैं तो आपको अधिसूचना - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions विधि के क्लिक से अधिसूचना मिलने पर विधि कहा जाता है।

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 

    UILocalNotification *localNotif = [launchOptions objectForKey:UIApplicationLaunchOptionsLocalNotificationKey]; 

    if (localNotif) 
{ 
    // code here. 
} 
संबंधित मुद्दे