用户可以通过firebase上的电子邮件/密码验证进行注册/登录。完成。我也能够得到当前的用户并且还让他在他的孩子中写下个人信息,游戏得分点随着他的进展而更新到firebase。完成。
现在,我希望用户A将积分转移给用户B.知道用户A是当前用户。也许用户A知道用户B的电子邮件或用户ID。如何让他访问/写入用户B的得分点。
我尝试了一些没有效果的方法: 我尝试了FirebaseDatabase.getInstance()。get reference()。child(" profile /")。child(X.getText()。toString())。addListenerForSingleValueEvent blah blah blah。 其中X是B的用户ID。好吧,这返回null。
我读了关于firebase-admin userRecord ..并且在尝试将它放入我的Gradle并遇到许多错误之后我发现它是针对服务器端的。所以不适用。
我读过关于列出所有用户的列表,但是如果我拥有一百万用户,那么dat似乎并不酷。当A只需要B时,它会显示所有内容。
喔。我是一名机械工程师。所以请不要推荐我阅读firebase文档等。大多数条款只会让我感到困惑,并且不会对此进行标记,因为已经问到的问题相信我,我已经阅读了所有内容。另外,如果你能够引用我的教程或者用A和B作为案例研究解释你编写的代码,我非常喜欢它。
答案 0 :(得分:0)
这是一个高级答案:
我建议添加一个节点,通知其他用户待处理的传输。像
这样的东西MyService
所有用户都应该向该节点添加观察者查询,以监视任何新添加的节点,其中toUid等于其Uid。在这种情况下,childAdded为uid_b。
当用户a向用户b转移100时,它将被写入该节点,并且将通知用户b已添加传输节点并可以更新其自己的节点,然后删除transfer_0。
同样,如果它们处于脱机状态然后登录,则childAdded将引入任何新的传输,以便可以更新其节点并在完成时删除传输。