Heloo,我正在构建一个应用程序,我通过 Firebase 控制台使用推送通知。我想知道简单的推送通知和云消息有什么区别?来自云消息传递的消息是数据消息(具有键和值)而通知只是没有键和值的文本吗?对吗?
问问题
19966 次
1 回答
58
Firebase API 有两种类型的消息,他们称之为:
- 通知
- 数据
解释:
- 通知- 仅当您的应用程序处于后台/被杀死时直接进入 Android 通知托盘的消息,或者如果您的应用程序处于前台则被传递到
onMessageReceived()
方法。
样本:
{
"notification" : { "body" : "Hi"}
}
- 数据有效负载- 无论您的应用程序是在前台还是后台还是被杀死,这些消息都将始终传递给
onMessageReceived()
方法。
样本:
{
"data" : { "message" : "Hi", "whatever_key": "value"}
}
重要提示:您不能从Firebase 控制台发送数据负载消息,控制台仅发送通知消息。但是使用 API,您可以发送两种类型的消息。
要发送数据有效负载消息,您必须发出 curl 请求:
HTTP POST 请求
https://fcm.googleapis.com/fcm/send
Content-Type:application/json
Authorization:key=AIzaSyZ-1u...0GBYzPu7Udno5aA
{ "data": {
"score": "5x1",
"time": "15:10"
},
"to" : "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1..."
}
您可以从 firebase 控制台获取服务器密钥 (AIzaSyZ-1u...0GBYzPu7Udno5aA):您的项目 -> 设置 -> 项目设置 -> 云消息传递 -> 服务器密钥
于 2016-06-21T15:21:00.123 回答