删除并重新安装iPhone应用后,如何接收本地通知

12

我在项目中使用UILocalNotification。我在使用UILocalNotifications时遇到了一个问题。如果我安排一周的通知,然后删除应用程序并重新安装,没有从重新安装的应用程序安排通知,我仍然会收到预先安排的通知。

即使从当前安装中没有安排通知,我仍然会收到通知。有没有办法取消/删除这些通知?

1个回答

13

实际上,当您安排未来的通知,然后删除应用程序,再次重新安装它时,在这种情况下,您将收到先前设置的通知。您正在接收的通知就是这些。

解决方案:

打开应用程序时,在AppDelegate的“didFinishLaunchingWithOptions”方法中调用以下方法。

-(void)removeAllLocalNotification
{
    [[UIApplication sharedApplication] cancelAllLocalNotifications];
}

因此,您将删除所有先前设置的通知。

但是,在执行上述操作之前:您需要注意,只有在应用程序启动时才需要调用上述方法一次,而不是每次启动应用程序时都要调用它。

您可以按以下方式完成:

创建一个BOOL变量并将其存储在NSUserDefault中。现在,当应用程序打开时,请从NSUserDefault检查它的值。如果为FALSE,则调用上述方法并将其值设置为TRUE并设置到NSUserDefault中。

现在,当您重新打开应用程序时,您将得到它的值为TRUE,因此此时不需要调用上述方法。这样,您当前设置的通知将不会被删除。

希望您明白了整个过程。

愉快的编码。

干杯!


谢谢,但如果我重新安装后不启动应用程序,我仍然会收到通知。 - Nassif

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接