删除代码后触发本地通知

时间:2015-03-09 09:18:41

标签: ios uilocalnotification

UILocalNotifiation我遇到了一个奇怪的问题。我每晚11点59分安排当地通知。现在,我已从我的项目中删除了该代码,但我仍然每晚11点59分收到本地通知。我试图从设备中删除构建,更改设备并清理派生数据。

1 个答案:

答案 0 :(得分:9)

这实际上是标准的iOS行为,因为您在iOS(实际操作系统)上安排通知。这意味着,一旦您安排了UILocalNotification,它就会停留在操作系统中,直到它触发或手动取消。

因此,对于您的情况,听起来您最初安排了一些通知,这些通知现在都在等待触发的操作系统中。当您更改代码或删除应用程序时,它们不会消失,只有删除它们或被解雇时它们才会消失。

为了确保您没有收到过去安排的任何通知,您可以使用以下方式删除它们:

[[UIApplication sharedApplication] cancelAllLocalNotifications];

您还可以获取应用当前安排的所有通知,并单独取消:

NSArray *activeNotifications = [[UIApplication sharedApplication] scheduledLocalNotifications];
for (UILocalNotification *notification in activeNotifications) {
   [[UIApplication sharedApplication] cancelNotification:notification];
}
相关问题