我有nodejs服务器和android客户端。两者都连接到我的firebase数据库。当服务器设置 "RefNode"
为null
时,在android端 "RefNode"
上设置的onDataChanged
Callback被调用。
是否有任何方法可以避免在特殊情况下被调用,当"RefNode"被设置为null时,而对于所有其他情况,它应该被调用。
我有一个监听器在节点 "RefNode"
在我的android应用程序如下所示:ondatachchanged()回调正在被调用,即使 "RefNode"
被nodejs服务器设置为null
。
FirbaseDatabase.getInstance().getReference().child("RefNode").addValueEventListener( new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if(dataSnapshot.exists()){
if(dataSnapshot.getValue()!=null) {
Log.v(TAG, "got here even when the Refnode was set to null");
}
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
// The listener got cancelled
}
});
我发现了两次附加事件侦听器的问题。我将ValueEventListener作为类的字段,并将其附加两次。