Firebase 推送通知和 FCM 消息有什么区别?
What is the difference between Firebase push-notifications and FCM messages?
你好,我正在构建一个应用程序,我在其中通过 Firebase 控制台使用推送通知。我想知道简单的推送通知和云消息有什么区别?
是不是云消息是数据消息(有key和value),而notifications只是没有key和value的文本?我说的对吗?
Firebase API 有两种类型的消息,他们称它们为:
- 通知
- 数据
解释:
- notification - 仅当您的应用程序位于 background/killed[=52 时,消息才会直接进入 Android 的通知托盘=] 或者如果您的应用程序在 foreground.
中,则被传送到 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):您的项目 -> 设置 -> 项目设置 -> 云消息传递 -> 服务器密钥
你好,我正在构建一个应用程序,我在其中通过 Firebase 控制台使用推送通知。我想知道简单的推送通知和云消息有什么区别? 是不是云消息是数据消息(有key和value),而notifications只是没有key和value的文本?我说的对吗?
Firebase API 有两种类型的消息,他们称它们为:
- 通知
- 数据
解释:
- notification - 仅当您的应用程序位于 background/killed[=52 时,消息才会直接进入 Android 的通知托盘=] 或者如果您的应用程序在 foreground. 中,则被传送到
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):您的项目 -> 设置 -> 项目设置 -> 云消息传递 -> 服务器密钥