1

我有一个具有管理员登录名的应用程序。我正在尝试添加管理员从应用程序本身发送推送通知而无需转到我的 Firebase 控制台的功能。当我询问 Firebase 支持时,我收到了这个回复。

“这可以通过 Firebase 云消息传递。您可以做的是从您的应用程序向应用程序服务器发送一条上游消息,然后它会处理上游消息以向客户端应用程序发送推送通知。”

有没有人这样做过?我试图弄清楚这将如何工作。由于非管理员只是在没有登录的情况下使用该应用程序,我是否会创建一个默认用户 ID,该应用程序本身会侦听上游消息,这意味着推送通知将被发送到?有没有办法将上游消息作为推送通知发送给手机上使用该应用程序的任何人?

4

2 回答 2

1

您可以使用 Firebase 控制台 GUI 将推送通知发送到您的客户端应用程序: https ://firebase.google.com/docs/notifications/

但是,如果您希望直接从您的客户端应用程序(移动或网络)发送推送通知,您必须实现自己的应用程序服务器,该服务器将与 FCM(Firebase 云消息传递)服务器一起向其他客户端发送通知。

Firebase 文档中对此进行了解释: https ://firebase.google.com/docs/cloud-messaging/server

还有关于此的 Firebase 博客文章: https ://firebase.googleblog.com/2016/08/sending-notifications-between-android.html

于 2016-07-24T18:35:28.437 回答
0

听起来您想让您的管理员从应用程序的管理员版本中启动 FCM 消息。在这种情况下,Firebase 支持是正确的,有几种方法可以实现这种类型的东西。

基本逻辑是:

  1. 管理员告诉服务器发送请求。
  2. 服务器代表管理员发送请求。

您有几个选项来实施第 1 步,第 2 步将始终相同。对于第 1 步,您可以:

  • 在您的服务器上创建一个仅接受来自您的管理员用户的请求的端点。管理员用户向该端点发送 HTTP 请求,其中包含服务器所需的所有信息,然后将 FCM 消息发送给所有相关用户。
  • 通过与 FCM 的 XMPP 连接使用从客户端到服务器的上游消息传递。管理员用户将使用 FCM 客户端 SDK 向 FCM 发送一条“上游”消息,该消息将转发到您的服务器,此时您的服务器将向所有相关用户发送一条 FCM 消息。

假设我了解您的要求,我认为第一个选项更容易,并且效果也很好。

于 2016-07-25T20:30:09.193 回答