Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何将firestore中的数据与1个集合中的2个设备连接同步?_Android_Firebase_Google Cloud Firestore - Fatal编程技术网

Android 如何将firestore中的数据与1个集合中的2个设备连接同步?

Android 如何将firestore中的数据与1个集合中的2个设备连接同步?,android,firebase,google-cloud-firestore,Android,Firebase,Google Cloud Firestore,如果我在Firestore中有一个集合,并且有两个设备连接到它。同帐 该集合上有3000个文档,在SQLite数据库的集合中有2个设备备份数据。设备1处于脱机状态,设备2处于联机状态。如果device2删除其中一个文档,那么device1在再次联机时如何删除该文档 我知道我可以阅读所有的集合来解决它,但它需要太多的阅读。 对不起我的英语。这不好。谢谢 设备1处于脱机状态,设备2处于联机状态。如果device2删除其中一个文档,那么device1在再次联机时如何删除该文档 由于联机,当Device

如果我在Firestore中有一个集合,并且有两个设备连接到它。同帐 该集合上有3000个文档,在SQLite数据库的集合中有2个设备备份数据。设备1处于脱机状态,设备2处于联机状态。如果device2删除其中一个文档,那么device1在再次联机时如何删除该文档

我知道我可以阅读所有的集合来解决它,但它需要太多的阅读。 对不起我的英语。这不好。谢谢

设备1处于脱机状态,设备2处于联机状态。如果device2删除其中一个文档,那么device1在再次联机时如何删除该文档

由于联机,当Device2删除文档时,服务器上几乎可以立即看到删除操作。当Device1重新联机时,删除的文档将不再位于服务器上。这意味着删除操作也将在设备1上进行。换句话说,当Device1恢复连接时,il将使集合中的所有文档与Firebase服务器同步,并且也是最新的

我知道我可以阅读所有的集合来解决它,但它需要太多的阅读


您将始终承担与查询返回的文档数相等的读取操作数。因此,如果您使用的是CollectionReference,而不是用于过滤文档的查询,那么您将承担与该集合中存在的文档数相等的读取操作数。

因此,如果device1再次联机,对于已删除的文档,只需执行一次读取操作,对于集合中的所有文档,只需执行3000次读取操作???如果您不打算使用查询根据条件筛选文档,这是处理此类情况最合适的方法,您将需要支付2999次读取操作和一次删除操作,对于脱机时删除的文档。我想这会消除你的疑虑,对吧?我明白了。非常感谢。不客气,卡卡洛!