1
Ich möchte die Daten aus Firebase löschen, bevor die Autorisierung aufgehoben wird. Das Problem ist, dass mFirebaseRef.unauth() nur funktioniert, wenn die Abfrage nicht leer ist. Aber ich brauche es zu arbeiten, auch wenn die Abfrage leer ist.So überprüfen Sie, ob die Firebase-Abfrage leer ist
final Firebase pushNotificationRef = new Firebase(Constant.FIREBASE_URL_PUSHNOTIFICATIONS);
final Query queryRef = pushNotificationRef.orderByChild("deviceToken").equalTo(token);
queryRef.addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot dataSnapshot, String s) {
if (dataSnapshot.exists()) {
Log.e("MyTag", dataSnapshot.getKey());
pushNotificationRef.child(dataSnapshot.getKey()).removeValue();
}
mFirebaseRef.unauth();
}
Die 'onChildAdded()' Methode wird nur aufgerufen werden, wenn ** ** ein Kind vorhanden ist, so dass Sie kann es nicht verwenden, um zu erkennen, wenn kein Kind anwesend ist. Sehen Sie sich diese Frage an, um herauszufinden, wie: http://stackoverflow.com/questions/34460779/what-happens-if-a-firebase-url-doesnot-exist-and-we-try-to-add-a-listener -to-it/34463972 # 34463972 –