我们使用Pushwhoosh进行远程通知。它工作正常,但Icon徽章数量没有增加。
这是代码:
- (void) onPushReceived:(PushNotificationManager *)pushManager withNotification:(NSDictionary *)pushNotification onStart:(BOOL)onStart
{
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:1];
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[[UIApplication sharedApplication] registerForRemoteNotificationTypes: (UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeBadge)];
PushNotificationManager * pushManager = [PushNotificationManager pushManager];
pushManager.delegate = self;
if ([launchOptions objectForKey:UIApplicationLaunchOptionsLocationKey]) {
PushNotificationManager * pushManager = [PushNotificationManager pushManager];
[pushManager startLocationTracking];
}
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:1];
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
}
如何在推送时增加应用图标徽章数?
答案 0 :(得分:8)
来自服务器端的徽章编号问题。检查推送通知有效内容是否包含应用程序徽章字段并设置为大于0的值。 因为当应用程序关闭/在后台时,通知有效负载中的值用于设置默认值为iOS的徽章而不是代码中的值。您的代码将仅在应用程序运行状态时设置徽章。在您的情况下,大多数可能在有效载荷中传递的徽章值将为0。
答案 1 :(得分:1)
得到解决方案。我们可以选择在推送服务器中设置通知标记号。