离子/ cordova中的Firebase离线功能

问题描述 投票:6回答:2

有没有人在Android / iOS中使用具有完全离线功能的Firebase实现原生应用?

这可以通过使用原生Firebase SDK的插件在Cordova / Ionic中完成吗?

我们正在构建一个在下载和首次启动时具有连接的应用程序但是我们必须假设一段时间内没有更多的互联网连接,并且数据库中的所有内容都必须可以脱机使用。 Firebase是否适合此要求,还是我们必须使用CouchDB / PouchDB或任何其他替代方案?

编辑:

这个问题提到了firebase实时数据库。我相信,随着新的firebase Cloud Firestore离线功能的开箱即用:

https://firebase.google.com/docs/database/rtdb-vs-firestore

实时数据库:仅针对iOS和Android上的移动客户端提供离线支持。

Cloud Firestore:对iOS,Android和Web客户端的脱机支持。

cordova firebase ionic-framework persistence offline
2个回答
4
投票

您可以使用以下项目 - AngularFire2-offline

它的目的是为支持浏览器(支持服务工作者)启用离线数据访问 - List of browsers (and matching versions) that support service workers

它以这种方式工作 -

  • 在线时,Firebase数据存储在本地(随着数据更改,本地存储更新)
  • 离线时,如果可用,则提供本地数据,并在本地存储写入
  • 在重新连接时,使用新Firebase数据进行应用更新,并将写入内容发送到Firebase
  • 即使在线,当可用时首先使用本地数据,这会导致更快的负载

6
投票

他们的JS SDK中没有对firebase的真正“离线”支持。他们现在拥有的离线解决方案意味着如果您丢失了互联网连接,并且连接“在线”数据将同步回来,您将获得离线支持。但如果您再次上线之前关闭应用程序,则“离线”数据将丢失。

这是一个Cordova firebase插件https://www.npmjs.com/package/cordova-plugin-firebase但它还不支持实时数据库。如果你愿意,你可以尝试扩展它。

如果您必须有离线支持,我建议您使用您提到的SQLite或CouchDB / PouchDB。

© www.soinside.com 2019 - 2024. All rights reserved.