Невозможно получить данные из базы данных Firebase Realtime - PullRequest
0 голосов
/ 13 мая 2019

Я пытаюсь получить имя моего пользователя и сказать ему привет каждый раз, когда приложение открыто. Но я не могу получить данные для определенного пользователя на основе его UID. Тост никогда не появляется, когда я запускаю приложение.

Структура базы данных

"Users" : {
    "SeLT0H7Qz9aWUSIpXwbCquiLBkA2" : {
      "age" : 20,
      "email" : "xyz@gmail.com",
      "name" : "xyz"
    }
}

код

ref.child("Users").child(uid).child("name").addValueEventListener(object: ValueEventListener{
           override fun onDataChange(ds: DataSnapshot) {
              name = (ds.child("name").getValue()).toString()
               Toast.makeText(baseContext , "Hello $name",Toast.LENGTH_SHORT)
           }
           override fun onCancelled(databaseError: DatabaseError) {

           }
       })

1 Ответ

0 голосов
/ 13 мая 2019

Вы уже подключаете слушателя к свойству name определенного пользователя, поэтому не должны получать свойство name в onDataChange:

ref.child("Users").child(uid).child("name").addValueEventListener(object: ValueEventListener{
     override fun onDataChange(ds: DataSnapshot) {
         name = ds.getValue(String::class.java)
         Toast.makeText(baseContext , "Hello $name", Toast.LENGTH_SHORT)
     }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...