我希望在收到通知时增加徽章计数,在用户点按或打开应用时减少。
我也试过这段代码,但它不起作用。
-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo{
[UIApplication sharedApplication].applicationIconBadgeNumber = [UIApplication sharedApplication].applicationIconBadgeNumber + 1;
}
答案 0 :(得分:1)
根据我的知识,应用程序会将此号码作为徽章计数显示在您的{“aps”:{“badge”:9}}词典中作为徽章值发送。
您在此方法中设置了什么
-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo{
[UIApplication sharedApplication].applicationIconBadgeNumber = [UIApplication sharedApplication].applicationIconBadgeNumber + 1;
}
当您通过点击逻辑上未写入的远程通知打开应用程序时设置,因为当您在设置徽章计数时打开应用程序时。
您必须在aps字典中传递徽章值,并且可以在应用程序打开时重置徽章计数(在didFinishLaunchingwithOption方法中)。
除此之外,您的应用程序代码中没有任何方法可以在您收到推送通知后立即设置徽章计数,并且您的应用程序已处于终止模式(根本不打开)。