Firebase的iOS离线功能与核心数据相比

nod*_*ase 15 ios firebase

我正在开发一小组类,这些类可以让您的Core Data与Firebase保持同步.但是,我最近遇到了Firebase的iOS离线功能,我注意到,关于数据持久性,它听起来像Core Data提供的类似功能.

正如我所说,我正在努力让我的核心数据与我的Firebase保持同步.这两者有何不同(如果有的话)?更具体地说,Firebase离线会提供类似的效果吗?我的意图是单用户应用程序,我不需要在同一个应用程序上同时支持多个用户.我需要持久保存数据,以便用户可以脱机访问数据,以及在应用程序会话/重新启动之间访问数据.

Dav*_*ast 13

我在Firebase工作,我曾尝试做同样的事情.

Firebase的离线功能使得使用CoreData有点多余.Firebase的离线处理许多复杂问题,如脱机处理身份验证和长时间离线后同步.

如果你真的想要将两者结合使用,那么在CoreData周围使用包装器可能会很有用.但是,我发现它最终变得比它真正值得复杂.


Jay*_*Jay 10

作为一个额外的答案...... Core Data和Firebase都可以"离线"存储数据.它们具有数据持久性,可以使您的代码对用户透明地脱机运行.

为了深入挖掘,Core Data没有"在线模式"*(内置),而一旦Firebase连接 - wham-o,所有离线数据现在都在线.(*CloudKit为CoreData提供在线服务)

此外,Firebase还具有实时数据更新功能,因此,如果您需要Firebase,则可以使用Firebase.

因此,对于您的用例,正如David所提到的,您正在以多种方式复制离线功能 - 特别是如果这只是单个用户使用的话.

如果您已经使CoreData和CloudKit工作,那么将Firebase循环到项目中可能不值得 - 它实际上取决于您正在构建的类的范围.