Retrieve Current User's Data (user_id) Firebase?

前端 未结 3 1068
星月不相逢
星月不相逢 2020-12-22 03:07

        firebaseAuth = FirebaseAuth.getInstance();
        mDatabase = FirebaseDatabase.getInstance();
        mDb = mDatabase.getReference();
        Fireb         


        
3条回答
  •  慢半拍i
    慢半拍i (楼主)
    2020-12-22 03:50

    It's simple. If you want to retrieve user data. Then you have to first select the child node in which you want to look for the user.

    You have to Nodes Tunanetra and Orangtua

    Else you can try this order by approach.

    FirebaseAuth firebaseAuth = FirebaseAuth.getInstance();
            FirebaseDatabase mDatabase = FirebaseDatabase.getInstance();
            DatabaseReference mDb = mDatabase.getReference();
            FirebaseUser user = firebaseAuth.getCurrentUser();
            String userKey = user.getUid();
    
            //First Approach
            mDb.child("Tunanetra").child(userKey).addValueEventListener(new ValueEventListener() {
                @Override
                public void onDataChange(DataSnapshot dataSnapshot) {
                    String userID = String.valueOf(dataSnapshot.child("user_id").getValue());
                }
    
                @Override
                public void onCancelled(DatabaseError databaseError) {
    
                }
            });
    
            //Second Approach
            mDb.child("Tunanetra").orderByChild("email").equalTo(user.getEmail()).limitToFirst(1).addValueEventListener(new ValueEventListener() {
                @Override
                public void onDataChange(DataSnapshot dataSnapshot) {
    
                    if(dataSnapshot.getChildrenCount()>0){
                        for(DataSnapshot data : dataSnapshot.getChildren()){
                            String userID = String.valueOf(data.child("user_id").getValue());
                        }
                    }
                }
    
                @Override
                public void onCancelled(DatabaseError databaseError) {
    
                }
            });
    

提交回复
热议问题