如何在删除应用程序时清除所有计划的本地通知

时间:2015-03-09 11:27:44

标签: ios objective-c iphone uilocalnotification nsnotifications

我正在开发一个iPhone应用程序,用户可以将本地通知安排为提醒。

applicationDidBecomeActive 方法中,我正在检查每个预定通知的过期日期,并取消已过期的通知。

现在我的问题是,如果我从手机中删除应用程序并重新安装,所有预定的通知(尚未过期)仍然存在。

但是,如果用户删除手机的应用程序,我的要求是取消所有预定的本地通知。

我该怎么做

[[UIApplication sharedApplication] cancelAllLocalNotifications]

1 个答案:

答案 0 :(得分:1)

如果您删除了应用程序,则会删除NSUserDefaults - 因此您可以设置具有某个值的NSUserDefault,并在应用程序启动时进行检查。

如果值为nil,您知道它是全新安装还是应用程序已被删除。然后你可以打电话取消本地通知。

取消现有通知后(如果它是全新安装,无论如何都不会发生,因为没有通知),您可以再次设置NSUserDefault,以便下次取消操作不会调用。