如何在不进行身份验证的情况下将核心数据持久化到云端

How to persist core data in cloud without authentication

我正在使用 core data 设计一个具有本地 Cache 的应用程序。我正在考虑使用 CloudKit 在多个 iOS 设备之间同步它。由于 CloudKit 不适用于 persisting 数据,我很确定如果用户丢失了他们的 phone 数据将永远消失。我的应用程序不需要任何身份验证,所以我如何将数据与本地 Cache 一起保存在云中,以便它可以跨多个 iOS 设备同步,例如 iPadiWatch

P.S。是否可以将用户生成的内容 files 保存在 Documents 中,以便他们可以在不使用 CloudKit 的情况下由 iCloud 自动备份?

根据您的问题,只有创建 Coredata 才能让您跨不同设备管理数据,但在此之前需要了解两个重要问题:

  1. 如何将现有数据预加载到 SQLite database
  2. 如何在 Xcode 项目中使用现有的 SQLite 数据库?

这是管理此问题的最受欢迎的教程之一:

https://www.raywenderlich.com/27657/how-to-perform-a-lightweight-core-data-migration

数据会定期备份到 iTunes 和 iCloud 上,因此如果您的用户更换设备,他们可以从 there.Yes 恢复数据,可以将用户生成的内容文件保存在 Documents 中,以便他们可以无需使用 CloudKit

即可通过 iCloud 自动备份