代码之家  ›  专栏  ›  技术社区  ›  Chichi

如何获得正确的DatabaseReference

  •  0
  • Chichi  · 技术社区  · 2 年前

    我正在创建一个用户配置文件,但我不知道如何获取子节点并将其显示在用户配置文件中,如何正确引用?如果有任何意见或建议,我将不胜感激,提前感谢!!

    用户配置文件

    private void showUserProfile( FirebaseUser firebaseUser) {
    
    String userID = firebaseUser.getUid();
    
    DatabaseReference referenceProfile = FirebaseDatabase.getInstance().getReference("Users"); 
    // 👆
    referenceProfile.child(userID).addListenerForSingleValueEvent(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot snapshot) {
            ReadWriteUserDetails readUserDetail = snapshot.getValue(ReadWriteUserDetails.class);
            if(readUserDetail != null){
                fullname = firebaseUser.getDisplayName();
                email = firebaseUser.getEmail();
                doB = readUserDetail.birthday;
                discount = readUserDetail.discount;
    
                textViewFullName.setText(fullname);
                textViewEmail.setText(email);
                textViewDoB.setText(doB);
                textViewDiscount.setText(discount);
            }
        }
    

    Firebase

    FIREBASE

    ReadWriteUserDetail类

    public class ReadWriteUserDetails {
        public String birthday, discount;
    
        public ReadWriteUserDetails(){};
    
        public ReadWriteUserDetails(String textBirthday, String textDiscount){
            this.birthday = textBirthday;
            this.discount = textDiscount;
        }
    }
    
    0 回复  |  直到 2 年前
        1
  •  0
  •   Frank van Puffelen    2 年前

    您将用户配置文件存储在路径下 /Users/Customers 在数据库中,这样您就可以将对该父节点的引用设置为:

    DatabaseReference referenceProfile =
                             FirebaseDatabase.getInstance().getReference("Users/Customers");