पुश सूचनाओं के बिना iOS बैज को अपडेट करना


86

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

जवाबों:


137

इसे इस्तेमाल करे

[[UIApplication sharedApplication] setApplicationIconBadgeNumber:1];

स्थानीय सूचनाओं के माध्यम से ऐसा करने के लिए आपको मूल्य निर्धारित करना होगा applicationIconBadgeNumber

UILocalNotification *localNotification = [[UILocalNotification alloc] init];
localNotification.applicationIconBadgeNumber = 1;// set here the value of badge

1
यह है कि आप बैज नंबर को कैसे बदलते हैं - लेकिन ऐप के बैकग्राउंड में रहने के दौरान या फोन के सो जाने पर ऐसा करने के लिए, आपको स्थानीय नोटिफिकेशन, या शेड्यूल किए गए कार्यों को देखने की आवश्यकता हो सकती है।
जसरीन

2
IOS 8.0 और बाद में, आइकन बैज को सेट करने में सक्षम होने से पहले आपके एप्लिकेशन को उपयोगकर्ता सूचनाओं के लिए पंजीकरण करना होगा - [UIApplication registerUserNotificationSettings:]।
13

17

और नए और चमकदार स्विफ्ट का उपयोग करने वाले सभी के लिए:

UIApplication.sharedApplication().applicationIconBadgeNumber = someNumber

स्विफ्ट 3:

UIApplication.shared.applicationIconBadgeNumber = someNumber

2
जब स्विफ्ट उत्तरों का सुझाव दिया जाता है, तो यह शामिल करना एक अच्छा अभ्यास है कि आप किस संस्करण को कवर कर रहे हैं, क्योंकि यह अभी बहुत गतिशील है।
जुआन बोएरो

हाँ आप सही है ; इस मामले में, हालांकि, सिंटैक्स में ऐसा कुछ भी नहीं है जो संभवतः बदल सकता है (यह सरल काम है) इसलिए शायद इसकी आवश्यकता नहीं है :)
जिरी ट्रेक

3
जिरी, हिंड्सटाइट में मनोरंजक टिप्पणी ;-)
टिम

13

IOS 4.0 के बाद से आप कम से कम iOS 4.0 चलाने वाले सभी उपकरणों पर स्थानीय सूचनाओं को आग लगा सकते हैं। में देखो UILocalNotificationवर्ग है, यह आप अपने अनुप्रयोग चल रहा है बिना आधी रात को बिल्ला स्थापित करने के लिए अनुमति देता है।


उह, आईफोन अलार्म घड़ी को चालू करने में भी सक्षम नहीं है, जब इसका संचालन बंद हो जाता है, तो नहीं, बैज तब अपडेट नहीं होगा। लेकिन जब आप इसे वापस चालू करते हैं, तो यह नोटिफिकेशन को आग देगा जो बैज को अपडेट करेगा।
जस्ट्सिड

ठीक है, यही मैं जानना चाहता था। धन्यवाद!
फेबियन 789

7

सेट UIApplicationके applicationIconBadgeNumberअपने कोड में संपत्ति जब आवेदन चल रहा है:

[UIApplication sharedApplication].applicationIconBadgeNumber = someNumber;

0

उद्देश्य सी के लिए आपको उपयोग करना होगा:

[[UIApplication sharedApplication] setApplicationIconBadgeNumber : anyNumber ];            

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.