我想每個用戶打開應用程序時清除應用程序圖標徽章的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