web-dev-qa-db-fra.com

Définir le numéro de badge d'application dans iOS 9

J'avais utilisé

[UIApplication sharedApplication].applicationIconBadgeNumber = 5;

pour définir le numéro de badge de l'application. Cela ne fonctionne pas uniquement sur iOS 9.

Quelqu'un peut-il suggérer pourquoi?

J'ai essayé,

[[UIApplication sharedApplication] setApplicationIconBadgeNumber:5];
19
Azik Abdullah

Salut Vous devez enregistrer UIUserNotificationSettings comme ceci

UIUserNotificationSettings* notificationSettings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeAlert | UIUserNotificationTypeBadge | UIUserNotificationTypeSound categories:nil];

[[UIApplication sharedApplication] registerUserNotificationSettings:notificationSettings];

[UIApplication sharedApplication].applicationIconBadgeNumber = 1;
31
Uma Madhavi

Inscription aux types de notification dans iOS

Dans iOS 8 et versions ultérieures, les applications qui utilisent des notifications locales ou distantes doivent enregistrer les types de notifications qu'elles ont l'intention de délivrer. Le système donne ensuite à l'utilisateur la possibilité de limiter les types de notifications affichées par votre application. Le système n'insigne pas d'icônes, n'affiche pas de messages d'alerte ou n'émet pas de sons d'alerte si l'un de ces types de notification n'est pas activé pour votre application, même s'ils sont spécifiés dans la charge utile de notification. Lien: Docs

@property (nonatomic) NSInteger applicationIconBadgeNumber; // mis à 0 pour cacher. la valeur par défaut est 0. Dans iOS 8.0 et versions ultérieures, votre application doit s'enregistrer pour les notifications des utilisateurs à l'aide de - [UIApplication registerUserNotificationSettings:] avant de pouvoir définir le badge d'icône.

Je pense donc que vous devez enregistrer des badges pour la notification de changement de numéro.

4
vien vu

Cela fonctionne parfaitement comme ceci:

[UIApplication sharedApplication].applicationIconBadgeNumber = 10;

J'ai essayé dans Xcode 7.2, iOS 9.2, iPhone 6s Plus.

2
O.C.

Mettez-le en vous Appdelegate.m Fichier dans la méthode didFinishLaunching ...

application.applicationIconBadgeNumber = 5.

et changez votre date actuelle en après 2 jours et redémarrez votre iPhone .. et testez à nouveau. Cela devrait bien fonctionner.

enter image description here

1
Mehul