firebase - Flutter Firestore 离线数据库
问题描述
我有一个关于 Cloud Firestore 和 Flutter 的澄清问题:我正在制作一个应用程序,用户可以创建各种日志条目,这些条目将保存在 Firebase 上。但在他们再次连接互联网之前,他们最多可以离线输入 30 个条目。
而且我知道Firestore有一个离线功能,任何创建的文档都可以离线查看,因为它是按照日志记录的顺序保存的,然后在获得互联网连接时与数据库同步。但绝对至关重要的是,这些日志在有机会上传之前不能在我的应用程序中丢失。有没有办法确保我的应用在再次连接到 Firebase 之前不会丢失这些数据,或者我应该在设备上创建一个 Sembast 数据库,并保存所有内容的副本,然后偶尔检查一下数据库?
如果手机的电池在与 Firestore 同步之前没电了,Firestore 是否有离线应急措施?
还是有我不知道的另一种解决方案?
解决方案
对于 Android 和 iOS,默认启用离线持久性。您无需在代码中执行任何操作。
请注意,默认缓存大小为 100 MB。这可以改变,例如
let settings = Firestore.firestore().settings
settings.cacheSizeBytes = FirestoreCacheSizeUnlimited
Firestore.firestore().settings = settings
推荐阅读
- python - 有人可以帮助我处理此错误消息“ValueError:无法将字符串转换为浮点数:'X'”
- google-apps-script - 尝试通过 google appscript 添加访客
- apache-kafka - 在 kafka-connect 到 S3 中使用不同转换器的错误/问题
- google-bigquery - 行的简单 SQL 聚合,其中值是整数数组
- abap - 外部视图已激活,但语法错误仍然存在
- javascript - 为什么我尝试提交表单时没有做任何事情?
- python - python - 如何通过python中的热图减法显示两个矩阵的差异?
- visual-studio - 类中方法参数的数量错误
- c# - 没有使用 PromptValidator,而是在 ChoiceExtractor 中抛出错误
- javascript - 用javascript创建一个“临时css”值得吗?