我在我的项目中使用UILocalNotification
。我使用UILocalNotifications
时遇到了问题。如果我安排一周的通知,删除应用程序并重新安装,而没有从重新安装的应用程序安排通知,我会收到先前安排的时间的通知。
即使当前安装没有安排通知,我也会收到通知。有没有办法取消安排/删除这些通知?
答案 0 :(得分:13)
实际上,当您安排将来的通知,然后删除应用程序,然后再次重新安装它,在这种情况下,您将收到以前设置的通知。你得到了什么。
解决方案:
当你打开应用程序然后在" didFinishLaunchingWithOptions" AppDelegate的方法,请调用以下方法。
-(void)removeAllLocalNotification
{
[[UIApplication sharedApplication] cancelAllLocalNotifications];
}
这样,您将删除之前设置的所有通知。
但是,在做上述事情之前:你需要注意,你只需要调用上面的方法一次。并非每次推出应用时都会。
您可以通过以下方式执行此操作:
创建一个BOOL变量并将其存储在NSUserDefault中。现在,当app打开然后从NSUserDefault检查它的值。如果为FALSE,则调用上述方法并将其值设置为TRUE并设置为NSUserDefault。
现在,当您重新打开应用时,您会将其值设为TRUE,因此此时您不需要调用上述方法。因此,您当前的设置通知未被删除。
希望,你得到了所有的东西。
快乐编码。
干杯!