首页 > 解决方案 > 没有互联网时firebase如何在数据库中存储变量并稍后传递这些变量

问题描述

我想了解当目标设备没有互联网连接时,firebase 如何存储对象数据以供以后交付。因为我想创建一个在没有连接时存储字符串列表并在连接可用后立即发送它们的方法。

标签: androidfirebasefirebase-realtime-database

解决方案


Firebase 目前有两个数据库:Firebase 实时数据库和 Cloud Firestore。幸运的是,就您的问题范围而言,它们的行为非常相似,但您通常需要指定您在问题中询问的数据库。

当您更改应用中的数据时,Firebase 会做两件事:

  1. 它更新其数据的本地快照,并为更改更新 firebase 本地事件。
  2. 它将更改发送到服务器,以将其提交到那里的永久存储。

如果您的应用程序未连接到服务器,它会将更改放入所谓的挂起写入队列中。如果您启用了磁盘持久性,则该队列将写入磁盘,否则它仅存在于内存中。

当应用程序正在运行并具有网络连接时,Firebase 会将任何待处理的写入发送到服务器。


推荐阅读