Ich versuche, ein Leseabfragetimeout mit Firebase-Datenbank zu machen, wenn keine Internetverbindung oder ein anderes Problem besteht. Das Problem ist, dass selbst wenn das Zeitlimit wirksam wird und der Listener entfernt wird, er trotzdem aufgerufen wird, obwohl er entfernt wurde. Wie kann ich das verhindern? Was ist der beste Weg, um Timeout zu verarbeiten?Legen Sie eine Zeitüberschreitung für eine Firebase-Datenbankabfrage fest
Hier ist mein Code:
final DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("key");
final ValueEventListener listener = new ValueEventListener() { /* ... */ };
ref.addListenerForSingleValueEvent(listener);
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
ref.removeEventListener(listener);
}
}, 5000);
Someone here scheint das gleiche Problem zu haben, aber ich verstehe nicht die Lösung.
Haben Sie die Lösung schon bekommen? –
@ParagKadam Nein, ich habe nicht viel darauf geachtet –
Ich habe es gelöst, überprüfen Sie meine Antwort aus. –