使用Firebase但不在Firebase中存储数据的Android聊天应用程序

使用Firebase但不在Firebase中存储数据的Android聊天应用程序,android,firebase,firebase-cloud-messaging,xmpp,chat,Android,Firebase,Firebase Cloud Messaging,Xmpp,Chat,我们正在使用谷歌教室API开发一个应用程序,在这里我们正在建立教师和学生之间的关系 现在,我们需要添加另一个功能,基本上是教师和学生之间的一对一聊天交流。为此,我考虑的是XMPP或FCM。我们有自己的服务器实现,其中用户(教师和学生)数据已经存在并维护 但在这方面,我有几个问题: 如果我要使用基于FCM的聊天,我是否需要根据FCM对用户进行身份验证?我已经在使用FCM发送通知 在一些教程中,我已经看到,他们将对话和用户数据存储在FCM数据库中。我可以将它们存储在后端数据库中而不存储在FCM数据库

我们正在使用谷歌教室API开发一个应用程序,在这里我们正在建立教师和学生之间的关系

现在,我们需要添加另一个功能,基本上是教师和学生之间的一对一聊天交流。为此,我考虑的是XMPP或FCM。我们有自己的服务器实现,其中用户(教师和学生)数据已经存在并维护

但在这方面,我有几个问题:

  • 如果我要使用基于FCM的聊天,我是否需要根据FCM对用户进行身份验证?我已经在使用FCM发送通知
  • 在一些教程中,我已经看到,他们将对话和用户数据存储在FCM数据库中。我可以将它们存储在后端数据库中而不存储在FCM数据库中吗
  • 如果我尝试使用XMPP,我会得到很多客户端代码,我可以使用smack API。但我不了解服务器端实现。有没有好的教程或github链接
  • 另外,我不会使用任何现有的具有定价模式的聊天sdk。所以,我需要基于以上的建议

    谢谢, 阿林丹


  • Firebase云消息传递不需要对用户进行身份验证。应用程序实例(在特定设备上安装特定应用程序)由应用程序ID/FCM令牌标识,FCM只需该令牌即可向该应用程序实例发送消息

  • 正如Gabe所评论的,Firebase Cloud Message和Firebase数据库是完全独立的产品。它们可以一起使用,但不一定要一起使用。Firebase云消息不是一个数据库,并且示例中没有用于查询可从应用程序调用的消息的API


  • 您似乎对Firebase消息传递和Firebase DB感到困惑。尽管使用了相同的名称,但它们并不相同。事实上,他们之间没有任何关系。Firebase只是谷歌编写/购买的一套云工具的营销名称。不完全是。如果您看到codelab教程,他们说要存储在firebase db中。你知道有什么好的教程我不需要存储在Firebase DB中,我自己的身份验证就可以了。太好了,所以一个特定的教程决定同时使用两种不同的技术。这并不意味着你必须这么做。它们是两个完全独立和不相关的东西-如果你愿意,你可以不使用任何一个。但是,我们是否需要对Firebase进行身份验证?我已经在用GoogleAuth对他进行课堂认证了。还有一个问题。我们如何存储这些聊天信息?我可以存储在我们的后端服务器吗?好的。理解。但是对于基于FCM的聊天应用程序,我们不需要进行身份验证吗?如前所述,我使用FCM发送通知。在这里,我们使用FCM令牌。但我对聊天应用程序感到困惑。有没有一篇很好的文章/教程?“Firebase云消息传递不要求用户经过身份验证。”要求提供教程(和其他非现场资源)与堆栈溢出无关。也就是说,几年前我写过: