首页 > 解决方案 > 如何从 firebase 数据库中获取登录用户的数据

问题描述

我需要这段代码的帮助。

如何从 firebase 数据库中获取登录的用户数据?

这些是我的代码:

public void getUserInfo(){
    mFirebaseDatabase = FirebaseDatabase.getInstance();
    mUserDatabase = mFirebaseDatabase.getReference("users");
    FirebaseUser user = mAuth.getCurrentUser();
    mUserDatabase.child(userID).addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange( com.google.firebase.database.DataSnapshot datasnapshot) {
            for (DataSnapshot dataSnapshot : datasnapshot.getChildren()) {
                User user1 = dataSnapshot.getValue(User.class);

                String firstname = user1.getFirstName();
                String secondname = user1.getSecondName();
                String email = user1.getEmail();
                String enrollment = user1.getEnrollnumber();
                String branch = user1.getBranch();
                String college = user1.getCollege();

                First_name.setText(firstname);
                Second_name.setText(secondname);
                tx_Email.setText(email);
                Enroll_number.setText(enrollment);

            }
        }
        @Override
        public void onCancelled(DatabaseError firebaseError) {
            /*
             * You may print the error message.
             **/
        }
    });

}

任何帮助,将不胜感激!

标签: javaandroidfirebasefirebase-realtime-databasefirebase-authentication

解决方案


据我所知,您正在将侦听器附加到单个用户的数据。这意味着您不需要dataSnapshot.getChildren()onDataChange.

所以:

public void onDataChange( com.google.firebase.database.DataSnapshot snapshot) {
    User user1 = snapshot.getValue(User.class);

    String firstname = user1.getFirstName();
    String secondname = user1.getSecondName();
    String email = user1.getEmail();
    String enrollment = user1.getEnrollnumber();
    String branch = user1.getBranch();
    String college = user1.getCollege();

    First_name.setText(firstname);
    Second_name.setText(secondname);
    tx_Email.setText(email);
    Enroll_number.setText(enrollment);
}

推荐阅读