iOS >>本地通知>>添加到应用程序徽章编号,而应用程序在后台



在我的应用程序中,我有触发本地通知的对象。

当应用程序在后台运行时,本地通知会在触发时触发,并且工作正常。

由于某种原因,徽章编号未更新。

设置通知对象时,我使用以下代码:

UILocalNotification* localNotification = [[UILocalNotification alloc] init];
localNotification.fireDate = obj.noteMeDate; //obj is an object for which the notification is created...
localNotification.alertBody = [NSString stringWithFormat:@"Note: %@", obj.title];
localNotification.alertAction = @"Show Me";
localNotification.timeZone = [NSTimeZone defaultTimeZone];
localNotification.soundName = UILocalNotificationDefaultSoundName;
localNotification.applicationIconBadgeNumber = [[UIApplication sharedApplication] applicationIconBadgeNumber] + 1; //this is NOT WORKING...
[[UIApplication sharedApplication] scheduleLocalNotification:localNotification];

任何人?

您不能增加徽章编号,只能将其设置为特定编号。在计划通知时,applicationIconBadgeNumber为 0(因为您在前台运行应用程序),因此每个通知在锁屏提醒中仅显示 1。

从技术上讲,您无法直接增加徽章图标,但有一种方法。

int num = [UIApplication sharedApplication].applicationIconBadgeNumber;
[UIApplication sharedApplication].applicationIconBadgeNumber = num + 1;

最新更新