【问题标题】:Firebase query for single value updateFirebase 查询单值更新
【发布时间】:2020-08-09 20:52:04
【问题描述】:
如何为 Firebase 数据库上的单个值更改添加侦听器。我尝试了下面的代码,但它会监听每个值的变化。
mFirebaseDatabase.child("url").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot){
}
}
【问题讨论】:
标签:
android
firebase
firebase-realtime-database
【解决方案1】:
您需要使用addListenerForSingleValueEvent() 方法,如以下代码行:
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!
}
}
【解决方案2】:
Query query = FirebaseDatabase.getInstance().getReferenceFromUrl(<url>);
query.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
希望对你有帮助