首页 > 解决方案 > 从数据库连接两个随机用户

问题描述

我正在尝试创建一个应用程序,我需要在其中匹配我的 Firebase 数据库中的两个随机用户。我遇到的问题是我不确定如何将数据库的每个用户连接到随机对:据我所知,用户可能会按下一个按钮来表示他已经准备好,所以他的 UID 的孩子喜欢“搜索”从假到真。通过接收 DataSnapshot,用户可以查看其他用户是否也在搜索。然后我想将两个用户的“搜索”状态都设置为 false,并创建一个新的 UniqueID 来连接他们。

但就像那样,它被认为很短,我认为并且会导致一些问题。谁能给我一个关于如何组织搜索过程的提示?

标签: firebasefirebase-realtime-database

解决方案


实际上使用一个像这样的特殊节点searching并将其设置为trueandfalse将是一个好主意。

您可以使用对节点设置为orderByChild()的所有用户进行排序,并获取任何这些用户的 uid。searchingtrue

为了让这个过程随机化,你可以给用户打电话,把给你的 id 拿回给你,然后用一个基本的随机数随机选择一个。

如果在调用用户后,您在一个数组中有 10 个用户 ID,您可能希望获得一个 0-9 之间的随机数,然后使用 userId 调用 firebase。

我不相信 Firebase 有任何内置代码。因此,这将是您在应用程序中实现此功能的最佳方法。

给出一个基本概念,您的数据库结构应该如下所示:

--rootNode
|
|
  -- uid1
| |
|  - searching
|  - other Fields
|
  -- uid2

  .
  .
  .

推荐阅读