Ответ 1
Отклонение уведомления не пробуждает ваше приложение, поэтому его невозможно зафиксировать.
Я перечисляю действия, направленные на мои локальные уведомления, но есть ли способ определить, когда пользователь отклоняет уведомление?
Вот как я слушаю мои действия в AppDelegate, но увольнение не срабатывает:
func application(application: UIApplication, handleActionWithIdentifier identifier: String?, forLocalNotification notification: UILocalNotification, completionHandler: () -> Void) {
var actionName: String? = nil
if let identifier = identifier {
switch identifier {
case "snoozeAction":
actionName = "snoozeActionTapped"
break
default: break
}
if let name = actionName {
NSNotificationCenter.defaultCenter().postNotificationName(name, object: nil)
}
}
completionHandler()
}
Отклонение уведомления не пробуждает ваше приложение, поэтому его невозможно зафиксировать.
Вы должны попробовать следующее:
func application(application: UIApplication!,
handleActionWithIdentifier identifier:String!,
forLocalNotification notification:UILocalNotification!,
completionHandler: (() -> Void)!){
if (identifier == "FIRST_ACTION"){
NSNotificationCenter.defaultCenter().postNotificationName("actionOnePressed", object: nil)
}else if (identifier == "SECOND_ACTION"){
NSNotificationCenter.defaultCenter().postNotificationName("actionTwoPressed", object: nil)
}
completionHandler()
}