我实现了友好的聊天。但这是小组聊天。我是Firebase的新手。需要文档来创建一对一的网络聊天。如何获取用户帐户列表并选择单个用户发送消息?请帮助我
如果用户通信的用户IDS UID_1和UID_2。
数据库结构应为:
contacts
--uid1
--uid2
--uid3
-- so on (1)
--uid2
--uid1
--uid4
-- so on (2)
messages
--uid1
--uid2
-- Push messages here.(3)
--uid2
--uid3
-- Push messages here also.(4)
添加联系人
如果用户1知道用户2您可以在位置(1(中添加用户2,然后在位置(2(中添加用户1。由于您正在使用用户ID实现,如果用户知道其他用户的UID,则可以发送消息。您可以将聊天邀请发送到Exchange UID。
添加消息
如果用户1或用户2在位置(3(和(4(中发送消息添加。该实现将确保即使用户1删除与用户2的对话,用户2仍然将具有副本并确保隐私。
这些是制作基本一对一firebase聊天应用程序的关键元素。
注意:用户ID由Firebase提供成功的身份验证。
也许尝试将问题分解为单个里程碑,并在每个里程碑中都需要帮助,以了解壁炉的工作方式。
根据您所写的内容,您必须:
- 身份验证用户(https://firebase.google.com/docs/auth/(
- 在以下数据结构(https://firebase.google.com/docs/database/(中,将这些用户配置文件保存到实时firebase数据库中
- 在列表/recycleview中列出这些用户(LearnHowToProgram.com/android/data-persistence/firebase-recycleradapter(
- 通过适配器中的听众来管理对话,参考儿童节点,这些节点是2个人之间的房间。
考虑如何使您的结构尽可能高效,例如在每个用户下两次保存对话,而是保存对单独的"对话"节点的引用。
如果您想要一个实时示例,我最近在基于位置的应用程序(占用(中实现了此功能。您将必须注册,添加服务并从另一个设备登录并选择该服务以与所有者聊天。