gpt4 book ai didi

ios - 我如何响应点击 UNUserNotification?

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:00:28 24 4
gpt4 key购买 nike

我在 iOS 10 中使用新的 UNUserNotification 框架。我可以看到如何添加操作按钮,但是当用户点击通知本身时我该如何响应?在我的例子中,它将是一张带有一些文字的图片。

默认行为是打开应用程序。

  1. 我能否使用自定义代码来检测我的应用程序是否因 UNUserNotification 点按而被打开,并且最好包含有关被点按的通知的标识符信息?

  2. 如果我的应用程序在后台运行或关闭,这些功能是否有效? UNUserNotification 文档建议设置 UNUserNotificationCenter 的委托(delegate),但我认为这仅在应用程序正在运行时才有效。

最佳答案

如果您还没有将 AppDelegate 设置为 UNUserNotificationCenterDelegate,并将以下内容添加到 didReceive 方法中:

func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void) {

let userInfo = ["identifier":response.notification.request.identifier]
NotificationCenter.default.post(name: Notification.Name(rawValue: "userNotificationCenterDidReceiveResponse"), object: self, userInfo: userInfo)

completionHandler()
}

然后您可以注册该“userNotificationCenterDidReceiveResponse”通知并使用标识符做任何您喜欢的事情。无论您的应用处于什么状态(包括未运行),这都适用。

如果这还不够清楚,我可以上传一个示例项目。

关于ios - 我如何响应点击 UNUserNotification?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44079616/

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