Отключить локальные уведомления, когда приложение станет активным - PullRequest
1 голос
/ 21 октября 2011

Я разрабатываю приложение для обмена мгновенными сообщениями, которое сохраняет соединение открытым в течение некоторого времени, когда приложение находится в фоновом режиме, и использует локальные уведомления для уведомления пользователя о новых входящих сообщениях.

Ранее на iOS 4 вызывался -[UIApplication cancelAllLocalNotifications] перед представлением нового локального уведомления с использованием -[UIApplication presentLocalNotificationNow:]. Таким образом, на экране всегда присутствовало только последнее уведомление.

Поскольку в iOS 5 появился Центр уведомлений, это решение больше не является приемлемым, поскольку мы хотим, чтобы там отображалось более одного последнего сообщения. Но мы также хотим закрыть все локальные уведомления, когда приложение станет активным. Как мне лучше это сделать? Я полагаю, мне следует позвонить -[UIApplication cancelAllLocalNotifications] в какой-то момент, но я не уверен, где. Ах, помощь будет оценена.

Ответы [ 2 ]

0 голосов
/ 21 октября 2011

Почему бы не вызвать -[UIApplication cancelAllLocalNotifications] в вашем приложении метод - (void)applicationDidBecomeActive:(UIApplication *)application?Это должно быть именно то, что вы ищете.

0 голосов
/ 21 октября 2011

Попробуйте вызвать -[UIApplication cancelAllLocalNotifications] в методе apllicationWillEnterForeground вашего приложения-делегата.

Подробнее здесь .

...