检索儿童价值 - 火灾 -

Moh*_*hat 11 java android firebase firebase-realtime-database

System.out.println(ref.child("mostafa_farahat22@yahoo.com").child("_email"));
Run Code Online (Sandbox Code Playgroud)

*我试图得到一个孩子的价值,但所有时间我得到的值的URL如何获得此URL的值,因为我尝试这个代码但它得到我想要获得_email值的URLi.

Ram*_*tin 27

你是从错误的角度看待这个概念.在使用时,ref.child("mostafa_farahat22@yahoo.com").child("_email")您只需指向数据库中的特定位置即可.如果要检索特定位置的数据,请考虑以下两种方法.

首先,如果您只想检索一次数据,则可以执行以下操作:

 DatabaseReference ref = FirebaseDatabase.getInstance().getReference();
 DatabaseReference mostafa = ref.child("Users").child("mostafa_farahat22@yahoo.com").child("_email");

 mostafa.addListenerForSingleValueEvent(new ValueEventListener() {
 @Override
 public void onDataChange(DataSnapshot dataSnapshot) {
    String email = dataSnapshot.getValue(String.class);
    //do what you want with the email 
 }

 @Override
 public void onCancelled(DatabaseError databaseError) {

 }
 });
Run Code Online (Sandbox Code Playgroud)

或者您可能希望实时检索该值并在数据库值更改的同一时间使用它,所有这些都在同一时间,每当更改值时,您使用此:

mostafa.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
    String email = dataSnapshot.getValue(String.class);

    display.setText(email);
}

@Override
public void onCancelled(DatabaseError databaseError) {

}
});
Run Code Online (Sandbox Code Playgroud)

注意两种方法的区别.第一个仅用于一次检索,第二个用于在值改变时检索数据.

请记住,我发布的代码只是模板,可能需​​要稍微玩一下.