0

For some reason I'm getting that error

Android - No such instance field:databaseref

I can't find where I'm wrong. I just want to get ref to my database to get all the users.

The code:

public class FirebaseMethodsHelper {
    private FirebaseDatabase databaseRef;
    private ArrayList<User> usersList;


    public List<User> getAllUsersFromDB(FirebaseUser currentUser){
        databaseRef = FirebaseDatabase.getInstance();
        usersList = null;
        if(currentUser != null) {
            databaseRef.getReference(Params.USERS).addListenerForSingleValueEvent(new ValueEventListener() {
                @Override
                public void onDataChange(DataSnapshot dataSnapshot) {
                    for (DataSnapshot snapshot : dataSnapshot.getChildren()) {
                        usersList.add(snapshot.getValue(User.class));
                    }
                }

                @Override
                public void onCancelled(DatabaseError databaseError) {

                }
            });

            return usersList;
        }
        return null;
    }
}

What I'm doing wrong?

Frank van Puffelen
  • 565,676
  • 79
  • 828
  • 807
E.Bolandian
  • 553
  • 10
  • 35
  • In some cases, this has been resolved by rebuilding the app or restarting Android Studio. See this answer: https://stackoverflow.com/questions/28646999/no-such-instance-field – Bob Snyder Dec 01 '17 at 21:31

1 Answers1

0

Change this:

 databaseRef.getReference(Params.USERS).addListenerForSingleValueEvent(new ValueEventListener() 

to this:

 databaseRef.getReference().child(Params.USERS).addListenerForSingleValueEvent(new ValueEventListener() 
Peter Haddad
  • 78,874
  • 25
  • 140
  • 134