如何检索存储在Firebase实时数据库中的用户数据?

时间:2020-08-20 12:15:53

标签: android firebase firebase-realtime-database

enter image description here

我的用户信息存储在数据库中。每当用户使用其电子邮件和密码登录并将其存储在sharedPref中时,我都希望检索此信息。如何检索信息?

1 个答案:

答案 0 :(得分:0)

使用此查询可以获取用户信息。只需在其中传递Firebase用户ID。

Query query = FirebaseDatabase.getInstance().getReference("users").child(userId);
            query.addListenerForSingleValueEvent(new ValueEventListener() {
                @Override
                public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
                    Log.d("My Msg", "Query for common = " + dataSnapshot.getValue());
                    if (dataSnapshot.getValue() != null) {
            // store data in user object
                        User user = new User(
                                Objects.requireNonNull(dataSnapshot.child("email").getValue()).toString(),
                                Objects.requireNonNull(dataSnapshot.child("id").getValue()).toString(),
                                Objects.requireNonNull(dataSnapshot.child("name").getValue()).toString(),
                                Objects.requireNonNull(dataSnapshot.child("truckid").getValue()).toString());
                        

            // here you can save the user data in shared preference with the help of user object 
                    } 


                }

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