Reputation: 13
How to add listener for a single value change on Firebase database. I tried below code but it listen on every value change.
mFirebaseDatabase.child("url").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot){
}
}
Upvotes: 1
Views: 479
Reputation: 138969
You need to use addListenerForSingleValueEvent()
method, like in the following lines of code:
mFirebaseDatabase.child("url").addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot){
//Get desired data from dataSnapshot object
}
@Override
public void onCancelled(DatabaseError databaseError) {
Log.d(TAG, databaseError.getMessage()); //Don't ignore errors!
}
}
Upvotes: 2
Reputation: 77
Query query = FirebaseDatabase.getInstance().getReferenceFromUrl(<url>);
query.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
Hope it help
Upvotes: 0