首页 > 解决方案 > 文档快照的工作原理

问题描述

我正在开发一个应用程序,我们可以将图像上传到 firebase 实时数据库。

问题.png

在图像中,我们可以看到电子邮件位于 uuid 之后。

现在我添加了以下代码:]

FirebaseDatabase.getInstance().getReference().child("users").addChildEventListener(object :ChildEventListener{
            override fun onChildAdded(snapshot: DataSnapshot, previousChildName: String?) {
                val email= snapshot.child("email").value as String
                emails.add(email)
                adapter.notifyDataSetChanged()
            }

如果我们想获取电子邮件,我们必须遵循以下路径:(user->uuid->email这里 uuid 是随机字母和数字的字符串)

但是在我们使用的代码中FirebaseDatabase.getInstance().getReference().child("users"),然后使用snapshot.child("email")了用于获取email.

我的问题是我们为什么要遵循 path users->email。我们没有提到去 uuid 吗?

email如果我们没有给出uuid它应该定位的位置,数据库将如何定位?

标签: androidkotlinfirebase-realtime-database

解决方案


当您将侦听器附加addChildEventListener到某个位置时,该位置下的每个子节点都会调用其onChildAdded方法。因此 Firebase SDKonChildAdded/users.


推荐阅读