当应用程序不在前台时,如何使传递的本地通知在固定时间到期?

时间:2018-12-25 17:17:54

标签: ios swift unusernotificationcenter

问题与iOS(11或更高版本)有关,特别是关于UserNotifications框架。我正在制作一个类似于日历的应用程序,该应用程序会为一个事件发送多个本地通知。它在事件发生前30分钟,事件发生前10分钟和事件发生时提醒用户。

第一个通知发送完毕后,我想在第二个通知发送时将其删除。同样,我希望在发送第三个通知时删除之前的两个通知。我知道我可以在信息字典中设置一个expiryDate

我知道UNUserNotificationCenter的方法removeDeliveredNotifications(withIdentifiers:)是解决方案。但是,我无法确定如何在预定时间我的应用程序不再位于前台时执行它。

我查看了后台模式,该模式允许

  • 音频播放/记录(NA)
  • 基于位置的应用(NA)
  • 漫长的执行(不幸的是仅限于180秒)
  • 外部蓝牙配件(NA)
  • NewsStand下载(NA)
  • VOIP(NA)
  • 后台获取(我的需求完全是本地的)
  • 远程通知(我的需求完全是本地的)

NA =不适用

那么一旦我的应用程序进入后台,如何删除传递的本地通知?

0 个答案:

没有答案