【问题标题】:iOS : Notification scheduled in past showing up on enabling from settings through "Allow Notifications"iOS:过去安排的通知显示在通过“允许通知”从设置启用时
【发布时间】:2026-01-29 22:00:01
【问题描述】:

这是我的场景:

  • 我将本地通知安排在下午 4:02 下午 4:00
  • 通过“允许通知”禁用设置中的通知
  • 正如预期的那样,通知不会在下午 4:02 出现
  • 下午 4:04,当我通过“允许通知”从设置中启用通知时,我会立即收到过去的通知(设置为下午 4:02)。

我找到了这个帖子: Scheduled Local Notifications showing up when toggled ON for time period when toggled OFF,这并不能解决我的目的,因为它要求清除预定的通知。当我的应用程序未运行时,这是不可能的。

有什么办法不显示过去的通知吗?

【问题讨论】:

    标签: ios iphone notifications uilocalnotification


    【解决方案1】:

    当您更改通知允许状态时;

    使用此代码取消所有本地通知:

    [[UIApplication sharedApplication] cancelAllLocalNotifications];
    

    用这行代码取消一个本地通知:

    [[UIApplication sharedApplication] cancelLocalNotification:theNotification];
    

    如果您想保留您未来的通知,删除本地通知的参数。否则,您再次允许通知您将看不到任何通知,因为您删除了所有通知。

    【讨论】:

    • 如果我的应用没有运行,我该怎么办?
    • 如果您的应用未运行,则您无法打开/关闭通知。当您更改通知权限状态时,请使用此方法。
    最近更新 更多