应用打开后从通知中心移除推送

Posted

技术标签:

【中文标题】应用打开后从通知中心移除推送【英文标题】:Remove push from notificationcenter after app has been opened 【发布时间】:2011-11-09 11:00:30 【问题描述】:

当我向我的应用发送 PUSH 通知时,它会停留在 ios 5 的通知中心。 如何从应用内的通知中心删除通知?

【问题讨论】:

【参考方案1】:

清除徽章会清除来自通知中心的通知。

- (void)applicationDidBecomeActive:(UIApplication *)application 
   // Clear application badge when app launches
   [[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];

这仅在数字更改时才有效。因此,要使其在徽章已经为零的情况下工作,请将其设置为某个值并在延迟后再次清除它。

- (void)applicationWillEnterForeground:(UIApplication *)application 
    if([[UIApplication sharedApplication] applicationIconBadgeNumber] == 0)
       [[UIApplication sharedApplication] setApplicationIconBadgeNumber:1];


- (void)applicationDidBecomeActive:(UIApplication *)application 
   // Clear application badge when app launches
   [[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];

如果你用同样的方法设置和清除就不行了。

【讨论】:

【参考方案2】:

无法从应用程序内的通知中心删除通知,因为在 iOS5 中,通知属性由应用程序显示,在:

Settings -> Notifications -> The app -> Notification Center (YES/NO).

【讨论】:

你确定吗?似乎有些应用程序可以做到这一点。 Apple 的应用程序可以做到这一点,例如 Messages、Mail 等。

以上是关于应用打开后从通知中心移除推送的主要内容,如果未能解决你的问题,请参考以下文章

Apple Watch:从通知中心打开推送时未显示动态 Long Look

为啥通知会自动从 iOS 通知中心移除?

如何在特定时间从 iOS 通知中心自动删除推送通知?

如何从通知中心 Swift 中删除特定的推送通知

如何在 iOS 的 Azure 移动应用通知中心注册目标推送通知

iPhone - 从通知中心删除推送通知