【发布时间】:2017-02-08 04:27:01
【问题描述】:
我正在尝试熟悉 Firebase 通知。它工作正常,但是当应用程序未打开时,我无法从通知控制台接收消息。
我知道文档是这样说的:
如果您的应用程序在前台或后台,您可以在 onMessageReceived 方法中接收消息,否则用户将在托盘中收到通知...点击它将打开主要活动,其中包含 Intent 中的数据
但是,即使应用程序已关闭,是否有任何方法可以从通知控制台捕获每条消息?
==== 回答 ====
寻找答案here
无法从通知控制台发送数据消息。
但是还有其他方法可以向设备发送通知,它们会在 onMessageReceived 中被捕获!
您可以使用终端(Mac 或 Linux)或 Postman 等服务在此链接上发送 Post 请求:https://fcm.googleapis.com/fcm/send
与下一个身体:
{
"to": "/topics/your_topic_here",
"data": {
"text":"text",
"text1":"text1",
...
}
}
您还需要添加 2 个标题:
- 授权 - key=your_server_key_here
- 内容类型 - 应用程序/json
要获取您的服务器密钥,您可以在 Firebase 控制台中找到它:您的项目 -> 设置 -> 项目设置 -> 云消息传递 -> 服务器密钥
【问题讨论】:
-
简而言之,要唤醒您被杀死的应用程序,您应该始终发送带有数据对象的通知,以在您的应用程序中调用通知服务类处理程序 FirebaseMessagingService.onMessageReceived()。也可以尝试不要从 Firebase 控制台发送,而是从其他地方发布(例如在线测试后服务)。
标签: android firebase firebase-cloud-messaging firebase-notifications