ios - CloudKit 记录的本地缓存

标签 ios swift cloudkit swift4

Apple 网站上的 CloudKit 文档中有一章名为 Maintaining Local Cache of CloudKit Records。然而,各地的在线人士都表示,使用 CloudKit 存储离线数据几乎是不可能的。我是相对较新的 iOS 开发人员。是否有人尝试按照 Apple 的文档实现离线数据存储(在设备上)?

最佳答案

如果您想要为您的应用提供真实的、离线优先的数据,那么是的,您需要添加某种数据库。

每次更新记录时,将其保存到数据库并将更新的记录推送到 CloudKit。您还可以订阅 CloudKit 更改并在记录更改出现时更新本地数据库。

Core Data 和 SQLite 是常用选项。我碰巧使用 Realm database ,我认为它比 Core Data 或 SQLite 更易于使用。我对其进行了设置,以便我的应用程序的 UI 与数据库中的离线数据交互(以便它始终可用)。 CloudKit 和我的 Realm 数据库协同工作以保持数据最新,但我的 UI 从不尝试依赖暂时性 CloudKit 记录的存在。

希望对您有所帮助。

关于ios - CloudKit 记录的本地缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47087938/

相关文章:

iphone - UIScrollview 仅在拖动 uiviews 时滚动

ios - 在 UI 生命周期的哪一点,分隔线作为 subview 添加到 UITableViewCells?

ios - ARKit中何时使用worldTransform()以及何时使用transform()

ios - 自动调整 UITableViewCell 阴影大小已关闭

ios - 使用 Image 加载 1000 条记录到 Collection View CloudKit Swift

iphone - iOS 自定义 TabBar 高度

ios - 将 UILabel 固定到 UICollectionViewCell contentView 按钮的自动布局约束

ios - SwiftUI 中具有可变数量选项卡的自定义选项卡栏

ios - 生成具有 CoreData 等属性的 CKRecord 类

ios - 使用 Storyboard instantiateviewcontrollerwithidentifier 在 tableView 之间传递数据