【问题标题】:Local notification fired after deleting code删除代码后触发本地通知
【发布时间】:2015-03-09 09:18:41
【问题描述】:

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

【问题讨论】:

  • 我也有同样的问题,我不知道为什么会触发本地通知。因为我删除了代码。

标签: ios uilocalnotification


【解决方案1】:

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

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

为了确保您不会收到任何过去安排好的通知,您可以使用以下方法将其删除:

[[UIApplication sharedApplication] cancelAllLocalNotifications];

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-30
    • 2016-12-02
    相关资源
    最近更新 更多