我想在收到通知时增加角标(Badge)计数,并在用户点击或打开应用时减少角标(Badge)计数。
我也尝试了这段代码,但它不起作用。
-(void)applicationUIApplication *)application didReceiveRemoteNotificationNSDictionary *)userInfo{
[UIApplication sharedApplication].applicationIconBadgeNumber = [UIApplication sharedApplication].applicationIconBadgeNumber + 1;
}
Best Answer-推荐答案 strong>
根据我的知识,应用程序将数字显示为角标(Badge)计数,这是您在此 { "aps": { "badge": 9 } } 字典中作为角标(Badge)值发送的。
你在这个方法中设置了什么
-(void)applicationUIApplication *)application didReceiveRemoteNotificationNSDictionary *)userInfo{
[UIApplication sharedApplication].applicationIconBadgeNumber = [UIApplication sharedApplication].applicationIconBadgeNumber + 1;
}
在您通过点击远程通知打开应用程序时设置,这在逻辑上不是写的,因为当您打开应用程序时,您正在设置角标(Badge)计数。
您必须在您的 aps 字典中传递角标(Badge)值,并且您可以在应用程序打开时重置角标(Badge)计数(在 didFinishLaunchingwithOption 方法中)。
除此之外,一旦您收到推送通知并且您的应用程序已经处于终止模式(根本未打开),您就无法在应用程序代码中编写设置角标(Badge)计数的方法。
关于ios - 如何在收到推送通知时处理 App Icon Badge Count?,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/37372548/
|