I'd used
[UIApplication sharedApplication].applicationIconBadgeNumber = 5;
for setting application badge number. It's not working in ios 9 alone.
Can anyone suggest why?
I tried,
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:5];
Hi You need to register UIUserNotificationSettings like this
UIUserNotificationSettings* notificationSettings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeAlert | UIUserNotificationTypeBadge | UIUserNotificationTypeSound categories:nil];
[[UIApplication sharedApplication] registerUserNotificationSettings:notificationSettings];
[UIApplication sharedApplication].applicationIconBadgeNumber = 1;
Registering for Notification Types in iOS
In iOS 8 and later, apps that use either local or remote notifications must register the types of notifications they intend to deliver. The system then gives the user the ability to limit the types of notifications your app displays. The system does not badge icons, display alert messages, or play alert sounds if any of these notification types are not enabled for your app, even if they are specified in the notification payload. Link: Docs
@property(nonatomic) NSInteger applicationIconBadgeNumber; // set to 0 to hide. default is 0. In iOS 8.0 and later, your application must register for user notifications using -[UIApplication registerUserNotificationSettings:] before being able to set the icon badge.
So I think you must register badges for change number notification.
It works perfectly like this:
[UIApplication sharedApplication].applicationIconBadgeNumber = 10;
I tried in Xcode 7.2, iOS 9.2, iPhone 6s Plus.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.