我在我的应用程序中广泛使用 CoreData 来查看产品。所有数据同步都在后台单独的 NSManagedObjectContexts 上完成,当更改同步完成时,我调用mergeChangesFromContextDidSaveNotification
这在 99% 的时间里都能完美运行。这是它崩溃的地方:
- 我在我的应用程序中查看产品。
- 我决定要更改价格,所以我转到我控制我的产品并更改价格的网络服务器。
- 我回到我的应用程序,浏览该产品,然后我的应用程序同步在网络服务器上对我的应用程序所做的更改。
- 我再次去看那个产品,价格没有改变。
- 我完全退出应用程序并重新进入它,然后我可以看到价格变化。
我相信发生的事情是 CoreData 正在提供产品的缓存版本,而新版本直到应用程序重新启动后才提供,我查看了一堆其他项目。
mergeChangesFromContextDidSaveNotification
我被调用后如何清除此缓存 ?
这让我和我的客户发疯——有人知道我该如何补救这种情况吗?