我正在使用自定义有效负载进行通知,并且收到通知,但无法从Key [“data”]获取。
这是我的有效载荷代码
{
"Simulator Target Bundle": "com.xyz.zyxapp",
"aps" : {
"alert" : "It's a notification with custom payload!",
"badge" : 1,
"content-available" : 0
},
"data" :{
"title" : "Game Request",
"body" : "Bob wants to play poker",
"action-loc-key" : "PLAY"
},
}
我正在尝试从didreceive方法访问数据
func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void)
{
print(response.notification.request.content.body)
}
结果是:这是带有自定义有效负载的通知!
如果有人可以帮助我,将不胜感激。
提前致谢
问候。
最佳答案
在通知的userInfo
属性而不是正文中解析自定义数据。 userInfo
是与通知关联的自定义信息的词典。
func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void) {
let userInfo = response.notification.request.content.userInfo
if let data = userInfo["data"] as? [String: Any] {
//
//Do your parsing here..
}
}
关于ios - 从Custom Payload Swift获取数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/61359050/