移动设备上的 Firebase firestore 数据持久性(特别是 Android)

Firebase firestore data persistence on mobile(specifically Android)

我想知道是否可以增加 firebase firestore 数据库的本地缓存大小? 也想加深我对 firebase firestore offline 的了解

移动设备上的数据持久性功能(具体为 android)。 让我解释一下我的用例,然后你评估一下 firebase firestore 是否适合我。

我需要一个可以平均每 24 小时同步一次的本地数据库,我需要它可以离线运行并保留它的数据。主要用例是这样的:我在应用程序中集成了一个消息传递功能,就像每个人都希望在他断开连接之前看到他必须发送和接收的消息一样,就像一个人断开连接时,他仍然可以看到即使在 phone 重新启动后,他在 whatsapp 上的不同对话也是如此,这就是我希望我的应用程序遵循的方式,我想知道 firebase firestore 本地缓存是否为我提供了即使在 phone 重新启动后仍保留缓存的可能性必须连接到互联网?我确实希望从本地缓存中进行大量读取,而不是离线时的写入。

总结一下我的问题,即使 phone 在没有任何互联网连接的情况下重新启动后,本地缓存能否保留 phone 离线时所做的更改?感谢大家的回答和提前阅读本文所花的时间。 请提供一些有用的教程链接,如果您知道其中的任何一个,请展示如何使用它。

本地缓存的大小取决于您设备的存储大小。如果您想增加本地存储的大小,那么您只需要释放一些 space 或购买新硬件即可。对于可以存储在您的设备上的最大大小没有限制。

Cloud Firestore 支持离线数据持久化。此功能会缓存您的应用正在使用的 Cloud Firestore 数据的副本,以便您的应用可以在设备离线时访问这些数据。您可以写入、读取、收听和查询缓存数据。因此,Cloud Firestore 会将您在设备上写入的数据保存到本地数据库。所以下次启动应用程序时,它确实能够读取相同的数据,即使设备从未连接到 Firebase 服务器。作为对你问题的回答,是的。

但不要将 Cloud Firestore 用作仅供离线使用的数据库。它实际上被设计为一个在线数据库,可以在短到中间断开连接的情况下工作。离线时,它将保留所有写入操作的队列。随着此队列的增长,本地操作和应用程序启动将变慢。 没什么大不了的,但随着时间的推移,这些可能会加起来。但请记住,即使您重新启动设备,所有这些操作也会持续存在。您不会丢失任何数据。