我想每个用户打开应用程序时清除应用程序图标徽章的GameKit秒内徽章号返回。在我的应用程序,我清除徽章用下面的代码:应用程序图标徽章清除短暂,但回合制应用
[UIApplication sharedApplication].applicationIconBadgeNumber = 0;
[[UIApplication sharedApplication] cancelAllLocalNotifications];
我把这个代码在这两个- (void) applicationDidFinishLaunching:(UIApplication*)application
和-(void) applicationWillEnterForeground:(UIApplication*)application
。在运行上述代码清除徽章之前,我还在- (void) applicationDidFinishLaunching:(UIApplication*)application
中注册了远程通知。
[[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeBadge)];
如果我启动应用程序,然后返回到主屏幕上,我看到了应用程序的徽章已经被清除,但是里面一两秒钟返回的值完全相同这是它被清除了。
我没有使用本地或推送通知自己,但因为它是一个回合制的比赛相当的GameKit使用它们。当某些事件发生(例如它变成本地玩家轮到比赛)时,推送通知被发送到他们的设备。
我会做什么错?
您能解决/调试此问题吗? – 2012-02-10 22:50:29