使用Firebase的两个用户之间的数据交换

时间:2016-09-05 17:27:49

标签: android firebase firebase-cloud-messaging

我不确定这个过程是如何调用的。说我是应用程序的用户,我想知道是否有消息给我(或我需要了解的状态更改),我不确定这是否是最佳方式但我想这样做:

Firebase Structure

Users   >  User A  >   Status = "No messages"

如上所示,每个用户都有一个节点Status。 当用户A向用户B发送消息时,用户A改变用户B的Status节点。

用户B,一直在听他自己的Status节点,现在知道有新的东西可以读取消息。

这是否可以安全地使用Firebase?

1 个答案:

答案 0 :(得分:2)

更简单的说明,更常用的类似于你的场景就像聊天应用程序。用户A向用户B发送消息,然后用户B从Firebase接收通知。

根据您的描述,您打算为Status节点安装一个侦听器,并在用户发生更改时通知用户。这似乎没问题,但是从之前的建议开始,保持监听器处于活动状态往往会在Android上有一个相应的活动套接字,这会增加电池消耗。

我建议你使用的是

  

Firebase Cloud Messaging是用于跨平台应用程序开发的Firebase工具套件的组件。

     
      
  • 发送无限上游/ 下游消息
  •   
  • 向各个设备发送消息或用户细分
  •   
  • 处理排队和交付的所有方面
  •   
  • 优化电池效率
  •   
     

使用FCM,您可以通知客户端应用可以同步新电子邮件或其他数据。您可以发送通知以推动用户重新接入和保留。对于即时消息传递等用例,消息可以将最多4KB的有效负载传输到客户端应用程序。

我认为聊天应用的这个Firebase Codelab也可能会有所帮助。