Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Retrieving data from Firebase in Android activity

I read many threads regarding how to get data from Firebase database instance, but none of them worked for me.

My code in the activity:

public class Violations extends AppCompatActivity
{
TextView textView7;

FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference dbref = database.getReference("save");

@Override
protected void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_violations);

    textView7 = findViewById(R.id.textView7);

    dbref.addValueEventListener(new ValueEventListener()
    {
        ArrayList<String> Violations = new ArrayList<>();
        @Override
        public void onDataChange(DataSnapshot dataSnapshot)
        {
            for (DataSnapshot postSnapshot: dataSnapshot.getChildren())
            {
                Violations.add(postSnapshot.getValue().toString());
                System.out.println(postSnapshot.getValue().toString());
            }
            for(int i=0; i < Violations.size(); i++)
            {
                textView7.setText(textView7.getText() + Violations.get(i) + System.lineSeparator());
            }
        }

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

There is no error in there, but no data displays. I am pretty sure, my problem is connecting to the right instance and retrieving the data.

Firebase data, are like this:

enter image description here

Can someone please help me in there?

Thanks you in advance.

like image 267
adamkwn Avatar asked May 18 '26 18:05

adamkwn


1 Answers

Initialize the Firebase database & the DatabaseReference inside onCreate() method:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_violations);

    FirebaseDatabase database = FirebaseDatabase.getInstance();
    DatabaseReference dbref = database.getReference("save");

    ...
    ..

Also, the reference you are getting is save but the Firebase database shows that is : you violate .... You may try changing the name to save or getting the right data : you violate ....

like image 119
ʍѳђઽ૯ท Avatar answered May 20 '26 08:05

ʍѳђઽ૯ท



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!