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