In der Dokumentation über Cloud Firestore Batched writes Ich lese "Sie können Batch-Schreibvorgänge ausführen, auch wenn das Gerät des Benutzers offline ist."Wie schreibt der Cloud Firestore Batched arbeitet im Offline-Modus
Kann dies ausgeschaltet oder ist es standardmäßig deaktiviert, da der Text "kann" sagen. The Cloud Firestore Transaktion wird scheitern, wenn Es ist offline und ich möchte Batched die gleiche
ich das Gefühl zu tun, schreibt ich für das Ergebnis in der OnCompleteListener
überprüfen:
batch.commit().addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
// offline/online??
}
});
Ich denke, das Doc sollte einige Erklärungen zu diesem
Danke Ich bin von Firebase Realtime-Datenbank migrieren und dort habe ich die 'updateChildren()', um alles oder nichts auf 10 Nicken durchzuführen. Wie Sie vorschlagen, Cloud Firestore Transactions zu verwenden, denke ich, dass man nur eine Sammlung/ein Dokument nimmt, also muss ich 10 Transaktionen ausführen? – Erik
Batch-Schreibvorgänge sind das Firestore-Äquivalent von updateChildren. Sie können Ihre 10 Updates in einem einzigen Stapel speichern und sie werden automatisch auf dem Server angewendet. Ihre Frage zeigte an, dass Sie das nicht zulassen möchten, wenn der Benutzer nicht online war. Wenn dies der Fall ist, verwenden Sie eine Transaktion anstelle eines Batch-Schreibvorgangs, da diese Anforderung erzwungen wird. Mit beiden Methoden können Sie mehrere Dokumente gleichzeitig bearbeiten. –
ok Ich sehe, dass jetzt die Transaktion 10 verschiedene Dokumente nehmen kann. Vielen Dank – Erik