gpt4 book ai didi

ios - 从 NSPersistentStoreCoordinator 提取特定更新

转载 作者:行者123 更新时间:2023-11-28 22:02:49 29 4
gpt4 key购买 nike

我目前正在使用 iCloud 和 CoreData 在我的应用程序中同步数据,因此每次触发通知时,我都会更新我的本地数据数组。我遇到的问题是我的数据集越来越大,我不想每次有新通知时都更新整个数据集。

基本上,我有一个名为 Photo 的实体,每次用户更新设备 A 上的一个 Photo 对象时,它都会与 iCloud 同步,然后推送到设备 B。设备通过以下方式接收通知:

persistentStoreDidImportUbiquitousContentChanges:

看起来像这样:

notification.userInfo.description: { deleted = "{(\n)}"; inserted = "{(\n 0x17045c80 56E70CB19352/Photo/p8431>\n)}"; updated = "{(\n)}"; }

我想抓取特定的插入、更新或删除并将其应用到我的本地数组,而不是遍历整个 fetchedObjects 集。

我尝试将插入对象转换为照片对象,但这没有用。关于如何提取该信息有什么想法吗?

谢谢!

最佳答案

该通知中的对象是 NSManagedObjectID 的实例。您可以将它们与您的 NSManagedObjectContext 一起使用来检索托管对象。使用 existingObjectWithID:error:(安全,可能较慢)或 objectWithID:(快速,可能不太安全)。

不过,您可能不需要这样做。您可以获取该通知并将其传递给 mergeChangesFromContextDidSaveNotification: 以合并它包含的任何更改。如果您需要进行手动合并,您可以,但通常不需要。

关于ios - 从 NSPersistentStoreCoordinator 提取特定更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24706164/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com