如何从fireBase推送通知swift 4中获取数据
Posted
技术标签:
【中文标题】如何从fireBase推送通知swift 4中获取数据【英文标题】:how to get data from fireBase push notifications swift 4 【发布时间】:2018-11-29 09:17:22 【问题描述】:我正在使用 fcm 来生成推送通知。
我得到了推送通知,但我不知道如何在 Swift 4 中提取响应。
func messaging(_ messaging: Messaging, didReceive remoteMessage: MessagingRemoteMessage)
print("Received data message: \(remoteMessage.appData)")
打印的结果是这样的:
收到数据消息:[AnyHashable("vibrate"): 1, AnyHashable("id"): 35823004, AnyHashable("message"): testMessage, AnyHashable("autoRun"): 假,AnyHashable(“来自”):523681638965,AnyHashable(“标题”):testTitle, AnyHashable("notifyType"): 通知, AnyHashable("sound"): 3, AnyHashable("大图标"): http://test.png, AnyHashable("ledColor"): #f39c12]
所以我的问题是如何访问“标题”和“消息”等内部的数据?
【问题讨论】:
appData
只是 [AnyHashable : Any]
字典,使用带键的下标。
谢谢,但你能给我一个从中提取价值的例子吗? @user28434
Exactly like you would do it with any other dictionary.
我尝试了最努力的提取方法,但你说得对,这很容易 :)) 非常感谢@user28434 _
【参考方案1】:
如果你想得到消息,你需要像下面这样设置:
func messaging(_ messaging: Messaging, didReceive remoteMessage: MessagingRemoteMessage)
print("Received data message: \(remoteMessage.appData)")
let info = response.notification.request.content.userInfo
if let message = info["messages"]
print(message)
【讨论】:
以上是关于如何从fireBase推送通知swift 4中获取数据的主要内容,如果未能解决你的问题,请参考以下文章
Firebase 推送通知无法获取 APNS 令牌错误 Domain=com.firebase.iid Code=1001 "(null)" using Swift3