如何防止打开另一个通知时通知从通知中心消失? iOS系统

2024-02-26

我正在开发一个接收推送通知的应用程序。此推送通知中,每一条都包含用户打开应用程序时显示的有价值的信息。

我的问题是,如果用户收到多个通知,如果用户点击它并打开应用程序,所有其他通知都会从通知中心消失,我会丢失所有其他重要信息。

我希望能够离开/防止通知从通知中心消失,以便用户可以选择继续从通知中心打开它们。有点像 YouTube 通知。我什至在 Twitch 应用通知中看到了这种行为。

任何想法?谢谢。


我知道这是一个很老的问题,但由于它没有答案,我会告诉你我是如何解决这个问题的。

简而言之,问题是由设置引起的UIApplication.shared.applicationIconBadgeNumber到 0;它正在使所有通知从通知中心删除。

解决方案是设置applicationIconBadgeNumber用户在通知中心收到的实际通知数量。我为此做了一个函数:

func updateIconBadge() {
    UNUserNotificationCenter.current().getDeliveredNotifications { notifications in
        DispatchQueue.main.async {
            UIApplication.shared.applicationIconBadgeNumber = notifications.count
        }
    }
}

现在你可以在方法中调用这个函数application(_application:, didFinishLaunchingWithOptions:), applicationWillEnterForeground(_application:), applicationDidBecomeActive(_application:) in AppDelegate.swift以确保它会在应该更新的时候更新。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何防止打开另一个通知时通知从通知中心消失? iOS系统 的相关文章

随机推荐