Восстановление между именем объекта - PullRequest
0 голосов
/ 30 октября 2019

Я хочу получить имя среднего объекта из базы данных Firebase в реальном времени. Моя база данных выглядит так:

Снимок базы данных

В этом примере мне интересно получить rBRAalNLEyfEcGeCDjMUOQGxXIF2 у first child. Пожалуйста, помогите!

1 Ответ

0 голосов
/ 31 октября 2019

Есть два способа получить rBRAalNLEyfEcGeCDjMUOQGxXIF2 из базы данных в реальном времени.

1) Если вы знаете идентификатор паранта, попробуйте этот код, чтобы получить rBRAalNLEyfEcGeCDjMUOQGxXIF2

 final DatabaseReference realTimeDataBaseRef=FirebaseDatabase.getInstance().getReference().child("friend_request").child("cUCvOB7EDDcBQeffxvPslG2pz2A2");
       realTimeDataBaseRef.addValueEventListener(new ValueEventListener(){
          @Override
          public void onDataChange(@NonNull DataSnapshot dataSnapshot){
             for(DataSnapshot item1: dataSnapshot.getChildren()){
                Log.i("check_middle_value",""+item1.getKey());
             }
          }

          @Override
          public void onCancelled(@NonNull DatabaseError databaseError){
          }
       });

2) Если вы не знаете родительский ключ, попробуйте этот код.

final DatabaseReference realTimeDataBase=
           FirebaseDatabase.getInstance().getReference().child("friend_request").child("cUCvOB7EDDcBQeffxvPslG2pz2A2");
        realTimeDataBase.addValueEventListener(new ValueEventListener(){
           @Override
           public void onDataChange(@NonNull DataSnapshot dataSnapshot){
              for(DataSnapshot item: dataSnapshot.getChildren()){
                 realTimeDataBase.child(item.getKey()).addValueEventListener(new ValueEventListener(){
                    @Override
                    public void onDataChange(@NonNull DataSnapshot dataSnapshot){
                       for(DataSnapshot item1: dataSnapshot.getChildren()){
                          Log.i("check_middle_value",""+item1.getKey());
                       }
                    }

                    @Override
                    public void onCancelled(@NonNull DatabaseError databaseError){
                    }
                 });
                 break;
              }
           }

           @Override
           public void onCancelled(@NonNull DatabaseError databaseError){
           }
        });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...