Как отменить регистрацию / отменить UILocalNotification

#iphone #uilocalnotification

#iPhone #uilocalnotification

Вопрос:

У меня возникли некоторые проблемы с поиском этого. На самом деле я хочу отменить регистрацию / отменить все мои локальные уведомления, когда я отключаю свой appln из фона. Любые мысли, как я могу это сделать.

Ответ №1:

Просто сделайте это, чтобы отменить все локальные уведомления.

 [[UIApplication sharedApplication] cancelAllLocalNotifications];
  

И, конечно же, вы не можете этого сделать, когда приложение будет удалено из панели многозадачности, поскольку ваше приложение никак не будет уведомлено, когда оно будет удалено из панели многозадачности.

Комментарии:

1. Но моя проблема в том, где я должен это написать, когда я убиваю свое приложение из панели многозадачности, какой метод вызывается. я разместил журнал в applicationWillTerminate, но он не вызывается.

2. Вы не получаете никаких уведомлений, когда ваше приложение по какой-либо причине отключается.

Ответ №2:

Когда ваше приложение отключается в фоновом режиме, вы НЕ получаете никаких уведомлений и НЕ получаете никаких шансов на запуск или очистку. Вы должны делать это, когда переходите в фоновый режим или ждете, пока ваше приложение не вернется на передний план.

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