我正在使用以下教程https://firebase.google.com/docs/firestore/manage-data/delete-data在离线时删除集合中的所有文档。
我遇到的问题是Tasks.await(batch.commit());
阻止而离线时不返回。据我所知https://developers.google.com/android/reference/com/google/firebase/firestore/WriteBatch,WirteBatch操作应该脱机工作。
答案 0 :(得分:0)
当我们说某个操作“离线工作”时,它可能并不意味着你认为它意味着什么。
离线执行WriteBatch
的结果将立即反映在您执行的任何侦听器或get()
操作中。因此,如果您在批处理中删除文档,然后尝试稍后阅读(同时仍处于脱机状态),则该文档似乎将被删除。
但是,在将批处理批量传播到服务器之前,Task
将无法完成。