当前位置: 首页 > 知识库问答 >
问题:

Firebase推送通知和FCM消息之间有什么区别?

徐智渊
2023-03-14

Heloo,我正在构建一个应用程序,通过Firebase控制台使用推送通知。我想知道简单推送通知和云消息之间的区别是什么?云消息传递的消息是数据消息(有键和值),而通知只是没有键和值的文本吗?我说得对吗?

共有1个答案

柴茂材
2023-03-14

Firebase API有两种类型的消息,它们称之为:

  • 通知
  • 数据
  1. 通知-仅当您的应用程序处于后台/被终止时,才直接发送到Android通知托盘的消息;如果您的应用程序位于前台,则直接发送到onMessageReceived()方法

样本:

{
    "notification" : { "body" : "Hi"}
}

样本:

{
    "data" : { "message" : "Hi", "whatever_key": "value"}
 }

参考链接

重要提示:您不能从Firebase控制台发送数据负载消息,控制台仅发送通知消息。然而,使用API,您可以发送两种类型的消息。

要发送数据有效负载消息,您必须发出curl请求:

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)-

 类似资料:
  • 问题内容: 我正在努力显示从FCM通知控制台发送到设备的推送通知。我可以看到设备正在接收通知,因为我可以看到发送“ test8”的消息 但是,无论我的应用程序位于前台还是后台都没有关系,但我不会显示通知。 我已在info.plist中添加了“必需的后台模式- 应用程序下载内容以响应推送通知”。我的证书是正确的,并且生成令牌没有问题。我的应用程序正在接收通知,但未显示它们。 我一直在尝试自己研究和解

  • 使用更新的Firebase cloud messaging和swizzling方法,当我的应用程序前景化时,我能够成功地在我的应用程序委托中的方法中接收有效负载。但是,我没有收到任何类型的有效负载,并且当我的应用程序处于后台时,不会被调用,尽管api响应消息已成功发送(见下文) 以下是我发送给FCM api的请求,以触发推送通知 有FCM的回复 这是我的appDelegate代码 我在我的应用程序

  • 这是舱单 这是我的注册令牌类 这是我的Firebase服务类

  • 以下是我的通知案例:当通知到达时,应用程序可能是前台,后台,或关闭 2.后台:当用户点击通知时,应用程序应显示在前面,并显示主要活动 3.App关闭时:当用户点击通知时,App应打开,并显示主要活动。 当我用设置intent和用设置PendingIntent时。它按预期工作,但当用户点击notification时,它不会调用Main Activity的onCreate方法。 如果您考虑了上面的代码

  • 使用Phonegap推送通知,如下所示 http://devgirl.org/2013/07/17/tutorial-implement-push-notifications-in-your-phoneGap-application/ 在使用.apk构建.apk时,我得到了这个错误.. 失败 失败:生成失败,出现异常。 出了什么问题: null 总时间:15.085秒 错误:带有args:/s,/

  • 在Apple Push Notification service(APNs)中,服务器端开发人员必须选择环境类型(沙箱或production)作为HTTP/2 URL(api.sandbox.Push.Apple.com或api.Push.Apple.com)。[1] 另一方面,在APN上的Firebase Cloud Messaging(FCM)中,似乎没有明确的接口来指定环境类型。[2] 有人