addListenerForSingleValueEvent返回空值事件我在之前添加了值

时间:2019-03-22 14:42:33

标签: android firebase firebase-realtime-database

作为标题,addListenerForSingleValueEvent仍会触发,但是其快照不包含任何内容。事件我在该节点上添加了新值。

详细信息:我有2个设备:A和B示例。如果两个设备都在线(具有互联网连接),则一切正常。但是真正的问题是,当我断开设备A的连接并使用设备B来添加新数据时(还将数据发送到FCM服务以触发addListenerForSingleValueEvent的onDataChange()),然后我重新连接设备A。但是我放入FCM服务中的addListenerForSingleValueEvent重新连接A时不返回任何数据(它仍然会触发但不存在快照)。为什么?

           ROOT_REF.child("mChild")
            .child(mID).child(uID)
            .orderByKey().equalTo(Object_Id).keepSync(true);

        ROOT_REF.child("mChild")
            .child(mID).child(uID)
            .orderByKey().equalTo(Object_Id)
            .addListenerForSingleValueEvent(new ValueEventListener() {
                @Override
                public void onDataChange(@NonNull DataSnapshot dataSnapshot) {

                if(dataSnapshot.exist()){

                 still fire but datasnapshot is not exist

                 }else {}


                    }

                }

                @Override
                public void onCancelled(@NonNull DatabaseError databaseError) {

                }
            });

0 个答案:

没有答案