获取传递到对象的firebae数据库数据

snvhrwxg  于 2021-07-07  发布在  Java
关注(0)|答案(0)|浏览(286)

这个问题在这里已经有答案了

getcontactsfromfirebase()方法返回空列表(1个答案)
在firebase侦听器中设置单例属性值(3个答案)
上个月关门了。
我的应用程序有问题。当用户在应用程序中注册时,会自动在数据库中创建用户的“配置文件”,其中uid是子级:
firebase用户数据
在应用程序中登录后,应用程序将调用activity2。启动时,支持将用户信息加载到类中:

{
    tUsers.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot snapshot) {

            if (snapshot.child(fauth.getUid()).child("uBirthday").exists()) {
            }
            else {

//userData is created when activity2 is called

              userData= (snapshot.child(fauth.getUid()).getValue(Class_UserData.class));

              Log.i("MainActivity inside", "User: " + userData.getUserName() + " Email: " + userData.getUserEmail());    
            }
        }
        @Override
        public void onCancelled (@NonNull DatabaseError error){
            return;
        }
    });

类用户数据以下:

String uName;
    String uEmail;
    String UserBirthday;
    String UserGender;
    int UserPhoto;

    public Class_UserData(String userName, String userEmail) {
        uName = userName;
        uEmail = userEmail;
    }

    public Class_UserData(String userName, String userEmail, String userBirthday, String userGender) {
        uName = userName;
        uEmail = userEmail;
        UserBirthday = userBirthday;
        UserGender = userGender;
    }

    public Class_UserData() {
    }

    public void setUserName(String userName) {
        uName = userName;
    }

    public void setUserEmail(String userEmail) {
        uEmail = userEmail;
    }

    public void setUserBirthday(String userBirthday) {
        UserBirthday = userBirthday;
    }

    public void setUserGender(String userGender) {
        UserGender = userGender;
    }

    public String getUserName() {
        return uName;
    }

    public String getUserEmail() {
        return uEmail;
    }

    public String getUserBirthday() {
        return UserBirthday;
    }

    public String getUserGender() {
        return UserGender;
    }
}

在ondatachange中,类正在工作。在类之外,它返回null。有什么办法解决这个问题吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题