Итак, у меня есть приложение, которое в настоящее время находится в магазине приложений, которое заранее рассылает 10 уведомлений, предполагая, что вы пропустили один, у вас все равно будет второй шанс или десять. Теперь, прежде чем вы подумаете, что я буду беспокоить человека, уведомление очень важно для функциональности приложения и на самом деле является главной целью. Приложение было создано для iOS 7, поэтому в то время не было "handleActionWithIdentifier", который, по моему мнению, может завершить действия для приложения, даже если он закрыт в зависимости от ответа пользователей на уведомление. Это обновление было очень полезно для приложения, поскольку оно устраняет часть моей проблемы при открытии приложения для ответа на уведомление (уведомления задают пользователю вопрос и в зависимости от ответа, что-то завершают).
Остается проблема - обнаружить, было ли упущено уведомление, как я могу сделать другое уведомление, например, на следующий день, если уведомление отклонено или проигнорировано. Я искал это в google и переполнении стека, и из моего понимания все предыдущие вопросы задавали вопрос о том, как обнаружить, было ли упущено уведомление, открытое приложение, которое мне не нужно.
В этот момент я могу правильно запустить код, если пользователь отвечает на уведомление, нажав одну из опций уведомления:
func application(application: UIApplication, handleActionWithIdentifier identifier: String?, forLocalNotification notification: UILocalNotification, withResponseInfo responseInfo: [NSObject : AnyObject], completionHandler: () -> Void) {
var userInfo = [NSObject: AnyObject]()
userInfo["text"] = responseInfo[UIUserNotificationActionResponseTypedTextKey]
NSNotificationCenter.defaultCenter().postNotificationName("text", object: nil, userInfo: userInfo)
print(userInfo)
completionHandler()
}
как сейчас, я просто беру ввод текста и печатаю его, но я мог бы запустить второе уведомление, если захочу. Есть ли способ обнаружения уведомления о пропущенном уведомлении и планирования другого уведомления?
Всегда есть шанс, что все еще невозможно сделать то, что я хочу, и я бы просто заплатил 10 уведомлений заранее, что кажется неаккуратным и не позволяет мне делать ответ как итеративный.
TL;DR; как я могу обнаружить и запустить код, если локальное уведомление пропущено БЕЗ открытия приложения
BTW: если у вас есть ответы, swift является предпочтительным языком