删除集合云 Firestore 中的文档

Delete documents within a collection cloud firestore

我正在使用以下教程 https://firebase.google.com/docs/firestore/manage-data/delete-data 在脱机时删除集合中的所有文档。 我遇到的问题是 Tasks.await(batch.commit()); 在离线时阻塞而不是 return。据我从这里了解到 https://developers.google.com/android/reference/com/google/firebase/firestore/WriteBatch,WirteBatch 操作应该离线工作。

当我们说一个操作时"works offline"它可能不是你想的那样。

离线执行 WriteBatch 的结果将立即反映在您执行的任何侦听器或 get() 操作中。因此,如果您在写入批处理中删除了一个文档,然后尝试稍后(仍处于离线状态)读取它,它将看起来像是被删除了。

但是,Task 在写入批处理传播到服务器之前不会完成。