A. *_*ano 6 android synchronization firebase google-cloud-firestore
我在文档中读到了这一点:
要使用离线持久性,您无需对用于访问 Cloud Firestore 数据的代码进行任何更改。启用离线持久化后,Cloud Firestore 客户端库会自动管理在线和离线数据访问,并在设备恢复在线时同步本地数据。
...
对于 Android 和 iOS,默认启用离线持久性。要禁用持久性,请将该
PersistenceEnabled
选项设置为false
。
在 Android 中,我创建了 Firestore 参考,如下所示:
final FirebaseFirestore db = FirebaseFirestore.getInstance();
Run Code Online (Sandbox Code Playgroud)
我假设默认情况下启用持久性。
我将尝试用这张图片解释发生了什么:
A
B
C
6
、 document 03000503
,但是整个集合没有启用持久化?03030501
,该文档在设备在线时并没有与设备同步?如果我在线时没有读过一次文档,则不会同步,并且同步不是针对集合中的所有文档6
?6
在线添加文档时采集是否可以同步?这是我阅读文档的代码:
final FirebaseFirestore db = FirebaseFirestore.getInstance();
Run Code Online (Sandbox Code Playgroud)
Firebase 不会自动在设备上缓存数据库中的所有数据。它的磁盘持久性仅将客户端已请求的数据存储在其本地数据库中。
从您链接的同一文档页面:
此功能会缓存您的应用正在使用的Cloud Firestore 数据的副本,以便您的应用可以在设备离线时访问该数据。
如果您考虑一下,这是有道理的:如果 Firebase 会同步您的用户可能看到的所有数据,那么它可能必须同步整个数据库。这在移动设备上是不合理的。
如果您希望特定数据可离线使用,请确保在设备仍处于在线状态时将观察附加到该数据。
归档时间: |
|
查看次数: |
6399 次 |
最近记录: |