OGeek|极客世界-中国程序员成长平台

标题: ios - 如何在收到推送通知时处理 App Icon Badge Count? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 16:38
标题: ios - 如何在收到推送通知时处理 App Icon Badge Count?

我想在收到通知时增加角标(Badge)计数,并在用户点击或打开应用时减少角标(Badge)计数。

我也尝试了这段代码,但它不起作用。

-(void)applicationUIApplication *)application didReceiveRemoteNotificationNSDictionary *)userInfo{
    [UIApplication sharedApplication].applicationIconBadgeNumber = [UIApplication sharedApplication].applicationIconBadgeNumber + 1; 
}

enter image description here



Best Answer-推荐答案


根据我的知识,应用程序将数字显示为角标(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/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (https://ogeek.cn/) Powered by Discuz! X3.4