Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.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
Ios Firebase脱机存储高级-手动同步和进度信息_Ios_Sqlite_Firebase_Firebase Realtime Database - Fatal编程技术网

Ios Firebase脱机存储高级-手动同步和进度信息

Ios Firebase脱机存储高级-手动同步和进度信息,ios,sqlite,firebase,firebase-realtime-database,Ios,Sqlite,Firebase,Firebase Realtime Database,我有一个主要功能是“离线使用”的应用程序 我们在服务器上生成一个SQLite数据库,并在API上提供下载。每次数据库发生更改时,用户都必须重新下载完整的SQLite数据库(目前为50MB,并且随着时间的推移不断增长) 我们试图改进更新方法,用户只需下载不同的SQL文件,但存在一些问题(性能、数据库损坏等) 现在谷歌发布了Firebase,我认为现在是用Firebase系统取代SQLite系统的好时机 但我有一些想法: 我是否可以下载整个Firebase数据库以供脱机使用(不在应用程序缓存中,也

我有一个主要功能是“离线使用”的应用程序

我们在服务器上生成一个SQLite数据库,并在API上提供下载。每次数据库发生更改时,用户都必须重新下载完整的SQLite数据库(目前为50MB,并且随着时间的推移不断增长)

我们试图改进更新方法,用户只需下载不同的SQL文件,但存在一些问题(性能、数据库损坏等)

现在谷歌发布了Firebase,我认为现在是用Firebase系统取代SQLite系统的好时机

但我有一些想法:

  • 我是否可以下载整个Firebase数据库以供脱机使用(不在应用程序缓存中,也不在持久存储中)
  • 我是否可以跟踪脱机同步的进度,并为用户提供现在或以后同步的选项
  • 我可以将同步仅限于WIFI吗
  • 我可以提供捆绑数据库吗?安装应用程序后,我已经可以查询离线Firebase数据了
我想要的是:在我的应用程序中使用Firebase仅同步数据库-但离线执行所有操作。如果Firebase不打算使用此功能,那么什么是好的替代方案

然后我还有一个关于Firebase的主要问题:

  • JSON存储非常好——但这样我们就不需要关心唯一的结构,我们必须注意插入始终正确的数据集
我是否可以下载整个Firebase数据库以供脱机使用(不在中) 应用程序缓存(位于永久存储中)

是的,您可以通过将磁盘持久性设置为true来实现这一点。您只需要引用数据库中的最高级别,firebase将返回所有子节点。

我是否可以跟踪脱机同步的进度并向用户提供 他想现在同步还是以后同步

我从未尝试过显示实际的进度,但是当您从firebase检索数据时,总是会在成功检索数据时调用onDataChange方法。

我可以将同步仅限于WIFI吗

我在Firebase文档中没有看到此选项,但是我不认为它很难实现

我可以交付捆绑数据库吗?安装应用程序后,我可以 是否已查询脱机Firebase数据

安装应用程序后,您需要立即从Firebase获取数据。理论上,当应用程序首次运行时,您也可以尝试在没有任何网络的情况下写入Firebase数据库,然后这些数据可以在本地获得,但是您需要小心,因为当用户获得网络连接时,这些数据可能会覆盖Firebase数据库中的数据。

谢谢你的回答!您还知道关于数据结构的最后一个问题吗?如果我下载整个数据库,并且如果我可以检测到数据库是否与在线版本不同,是否可以向我提供查询下载进度的更多详细信息?是否有新闻?还是一样,还是我们现在能做得更好?