是否有任何功能可以帮助在flutter应用程序中添加朋友并对其进行排序?



我正在开发一个聊天应用程序使用flutter和firebase作为后端,我想要这些功能,

  1. 我需要实现一个添加好友功能,并将其添加到联系人列表。

  2. 当用户与联系人交谈时,其聊天室将像messenger一样在列表中排序到顶部。

我该怎么做,我应该使用firestore还是数据库?链接到这个项目的GitHub仓库:https://github.com/Maxcousin123/whatzapp.git

Thanks in advance

在聊天应用程序中使用Firestore可能不是最好的方法,因为它需要大量的读写操作,而Firestore的速率更多地取决于读写而不是存储。

对于实时更新,使用FireStore,因为它提供的数据流在使用StreamBuilder时非常有用。

创建Firestore collection forchats

在这个集合中,为每个用户创建一个唯一的文档,userId为documentId

创建一个名为chatRooms的子集合,并为每个chatRooms文档创建一个字段lastMessageTime,该字段将用于排序。

你的firestore结构应该是这样的,

  • chat (collection)
    |
    • userId
      |
      • 聊天室(子集合)
        |
        • chatRoomId
          |
          • lastMessageTime (TimeStamp - Field)
          • lastMessageData (String - Field)
          • 消息(Subcollection)

要获得最新活动在顶部的聊天室,根据TimeStampchatRooms收集的数据进行排序。

Firestore.instance
.collection("chat").doc(user.id).collection("chatRooms")
.orderBy('lastMessageTime', descending: true).getDocuments()



p。S:这可能不是最好的解决方案,但你可以通过尝试来学习。

最新更新