将旧的推送通知从通知中心移除掉的三种方法


1.将app的BadgeNumber设为0

[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];


2.如果BadgeNumber本身就是0的情况,可以先将其设1再设置成0

[[UIApplication sharedApplication] setApplicationIconBadgeNumber:1];
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];

3.如果以上的办法都不好使的话,那就用本地通知欺骗一下。

UIApplication* application = [UIApplication sharedApplication];
NSArray* scheduledNotifications = [NSArray arrayWithArray:application.scheduledLocalNotifications];
application.scheduledLocalNotifications = scheduledNotifications;

就这么多了,我仔细想了一下,为什么我的应用从其中一条通知打开的时候,其它的通知消失掉:
因为我在程序启动的时候就执行了第一条:)

 

posted @ 2013-02-02 12:05  I'm 小菜鸟  阅读(311)  评论(0编辑  收藏  举报