我在我的应用中使用了本地通知,但在正确处理它们时遇到了问题。
当应用程序正在运行且处于活动状态时,在didReceiveLocalNotification
我可以从NSUserDefaults
获取用户设置并处理重复通知,如果开火日期不是它应该触发的那天,则取消它,如果日期正确,则显示提醒。
然而,当应用程序正在运行但处于非活动状态时,通知将会触发,但不应该启动。
当应用程序未运行时,通知将会触发,但不应该启动。
问题
当应用未运行且应用处于非活动状态时,如何在警报显示之前访问NSUserDefaults
并取消通知?
编辑回答
我不得不问这个的原因是因为应用程序设计和逻辑不好。我试图设置重复的本地通知,无论用户设置了什么设置并访问NSUserDefaults
,尽管我应该首先在应用程序中访问用户设置,然后相应地设置通知。
答案 0 :(得分:0)
你做不到。 UILocalNotification
由iOS而非您的应用处理。
只有当您的应用处于活动状态时,通知才会直接推送到您的应用。
在所有其他情况下,操作系统只会显示通知。