我目前正在使用 Firebase实时数据库来构建聊天应用程序。我以this Raywenderlich tutorial为起点学习Firebase。
在我的情况下,我需要在有新消息时发送推送通知(还有其他 Firebase中的数据库更改的推送通知)。 我知道有FCM和Firebase Notification发送推送通知,但它们只能从HTTP请求外部触发。
我不介意拥有自己的Node.js服务器来实现这一目标,但我该怎么做? 如何跟踪有新消息的位置(更改数据库)。
什么是Firebase Admin SDK?我应该使用它吗? 我是Firebase的新手,有点迷路了。有人能让我走上正轨吗?
答案 0 :(得分:0)
您可以使用云功能执行此操作。
答案 1 :(得分:0)
你是对的,你应该使用管理服务器。
@AM_ answer是一个好的开始:你需要一个监听数据变化的后台任务。但现在有更好的方法来做到这一点。
Firebase has a queue system,允许您创建多个工作程序来处理后台作业。 以下是一个例子:https://github.com/mcdonamp/sanichat
而不是直接构建使用FCM的http POST请求,Firebase Admin Node.Js SDK确实为FCM提供了API。 Java版本还没有。
最后,这是关于Admin SDK的nice Firebase team blog post。
答案 2 :(得分:0)
当我问这个问题时,Google没有Firebase cloud functions
。如果有人偶然发现这个问题,我终于使用云功能(仍处于测试阶段)解决了这个问题。