我在推送通知的委托中定义了以下函数。
func pushManager(pushManager: AWSPushManager, didReceivePushNotification userInfo: [NSObject : AnyObject]) {
print("Received a Push Notification: \(userInfo.description)")
let x = userInfo.description
}
只要我的应用收到推送通知,就会调用此函数。 userInfo的description属性包含推送消息,它采用以下格式:“[aps:{\ n alert =; \ n}]”。我想知道什么是获取消息部分的最佳方式。我可以使用正则表达式来提取消息部分,但我不确定消息的模式。这甚至是一种正确的方式吗?我在想是否有一个返回干净消息的函数。
答案 0 :(得分:0)
aps的格式是JSON。您需要将“userInfo”序列化为JSON格式。为此,您可以使用类似SwiftyJSON的框架:
let json = JSON(userInfo)
现在你可以像这样访问APS了
print(json["aps"])
您可以使用标准函数(包含在Swift中)初始化JSON,但是,您需要先将userInfo转换为数据。