【发布时间】:2018-01-10 19:34:55
【问题描述】:
我正在构建一个简单的 iOS 应用程序,这将是我将在 Apple 的 App Store 上发布的第一个应用程序。在某一时刻,该应用程序会访问用户的联系人列表,并让他们选择他们想要保存为收藏夹的任意数量的联系人。
为了便于构建版本一,我目前正在使用 UserDefaults 来保存这些收藏夹。虽然它在我有限的测试中运行良好,但我知道 Core Data 和 CloudKit 是大型解决方案的稳定选择。
对于像我这样的应用程序,我只使用 UserDefaults 将选定数量的联系人保存为收藏夹,UserDefaults 是一个足够的解决方案吗?还是我应该过渡到更强大的东西,比如 Core Data 或 CloudKit?用户可以选择收藏的联系人数量没有限制,因此用户可能会一一选择所有联系人并尝试将其全部保存为收藏。
如果用户得到一部新手机并且由于 UserDefaults 在设备上是本地的而丢失了所有现有数据,那么很快就可以将此应用恢复到他们之前拥有的位置。
【问题讨论】:
-
The documentation 说“这些参数被称为 defaults,因为它们通常用于确定应用程序在启动时的默认状态或默认行为方式。”恕我直言,这不是放置任何模型对象的正确位置,无论它们有多“重”。
-
仅供参考,我可能会将您推荐给iOS Storage Best Practices。不仅视频不错,而且里面也有相关文档的链接。
-
非常感谢这两个链接!今晚我将观看有关 iOS 存储最佳实践的视频。
-
我也会考虑使用 Realm 来持久化数据。
标签: ios core-data swift4 cloudkit userdefaults