Удаление уведомления из центра уведомлений по клику - PullRequest
15 голосов
/ 26 января 2012

Можно ли удалить push-уведомление из центра уведомлений при нажатии на него и запуске приложения?

Большинство приложений, похоже, оставляют уведомление на месте.Я прочитал еще один вопрос, что это:

[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0]; 

может работать, но у меня это не работает.

Приложение Facebook определенно удаляет push-уведомления после нажатия.

1 Ответ

23 голосов
/ 27 января 2012
int badgeCount = [UIApplication sharedApplication].applicationIconBadgeNumber;
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
[[UIApplication sharedApplication] cancelAllLocalNotifications];
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:badgeCount];

Если вы добавите это к обоим

- (void)applicationWillEnterForeground:(UIApplication *)application

И

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions (NSDictionary *)launchOptions

Вы сохраните счетчик значков и очистите push-уведомление при его нажатии в центре уведомлений.

...