gpt4 book ai didi

ios - 当应用程序返回前台时读取最新的推送通知数据(不是通过点击通知)

转载 作者:行者123 更新时间:2023-11-28 15:11:56 25 4
gpt4 key购买 nike

实现推送通知时用户可以点击通知将最小化的应用程序带到前台,这对我来说很好用,我通常像这样读取通知数据......

func userNotificationCenter(_ center: UNUserNotificationCenter, willPresent notification: UNNotification, withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void)
{
let userInfo = notification.request.content.userInfo
parsePayload(arg: (userInfo["PN_Body"] as? NSString)!)
completionHandler([.alert, .badge, .sound])
}

我的问题是关于另一种情况

如果用户在应用程序最小化时收到 5 条通知,并将应用程序置于前台(不是通过点击通知),那么我将如何读取最新发送的通知?

最佳答案

您可以通过调用 func getDeliveredNotifications(completionHandler: @escaping ([UNNotification]) -> Void) 获取通知中心仍然可见的通知

“notifications:一组 UNNotification 对象,代表您的应用程序的本地和远程通知,这些通知已发送并且在通知中心仍然可见。如果您的应用程序的通知在通知中心都不可见,则该数组为空。”

但是,如果通知过时并且已经在通知中心放置了一段时间,这可能无法提供准确的信息。您可以让它变得非常困惑,并开始检查通知的交付日期,并将其与上次应用进入后台/终止的时间进行比较。

正如@paulw11 所说,您应该检查服务器并以这种方式刷新信息。

关于ios - 当应用程序返回前台时读取最新的推送通知数据(不是通过点击通知),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47500184/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com