是否可以从通知中心删除特定的推送通知?

  • 本文关键字:通知 是否 删除 ios
  • 更新时间 :
  • 英文 :


我希望能够从通知中心删除特定的推送通知。

UNUserNotificationCenter.current().removeAllDeliveredNotifications()显然不能使用,因为它会删除所有内容。

UNUserNotificationCenter.current().removePendingNotificationRequests(withIdentifiers)适用于本地通知,您可以在创建和发布通知时设置标识符。 但是,似乎无法设置推送通知的标识符,如果实现通知服务扩展,似乎也没有在推送传递之前在其中设置标识符的方法,也没有获取操作系统分配的任何内部标识符的方法。

因此,实际上是否可以从通知中心删除特定的推送通知?

根据文档,您可以使用 removeDeliveredNotifications(withIdentifiers:( 方法从通知中心删除特定通知。

UNUserNotificationCenter.current().removeDeliveredNotifications(withIdentifiers: [yourNotificationIdentifier])

您也可以根据标识符

的文档为远程通知指定标识符:

对于远程通知,它设置为 您在 APNs 请求标头中指定的 APNS-collapse-id 密钥 生成远程通知时。如果未设置任何值,则 系统会自动分配标识符。

最新更新