CoreData+CloudKit iOS13 NSPersistentStoreRemoteChangeNotification
Posted
技术标签:
【中文标题】CoreData+CloudKit iOS13 NSPersistentStoreRemoteChangeNotification【英文标题】: 【发布时间】:2019-12-18 13:43:51 【问题描述】:我正在使用CoreData+CloudKit NSPersistentCloudKitContainer
自动同步数据到CloudKit
。
我一直在查看 Apple 提供的 Sample App,了解如何监听远程商店更改通知并阅读历史更改。在实施相同的操作后,我注意到NSPersistentStoreRemoteChangeNotification
被多次触发。在每次应用启动时,即使数据没有变化,历史记录的变化也会显示插入到所有实体中,这确实令人困惑。
您如何可靠地检查是否有实际记录添加到实体中?还有如何处理同时触发的多个通知?
【问题讨论】:
【参考方案1】:创建NSPersistentHistoryToken
的实例以跟踪您处理的最新历史记录。在保存期间设置事务并使用NSPersistentHistoryTransaction
的谓词仅获取其他作者。
有关更多详细信息,请参阅Consuming Relevant Store Changes. 中的“跟踪您在历史上的位置”
【讨论】:
以上是关于CoreData+CloudKit iOS13 NSPersistentStoreRemoteChangeNotification的主要内容,如果未能解决你的问题,请参考以下文章
iOS swift:使用 coredata (cloudkit) 存储缓存
如何通过 Today Extension (iOS 8) 访问 Core Data/CloudKit