Ios AFP记录和适当使用
我正在构建一个基于AFNetworking和MagicalRecord的新闻应用程序。 我必须与服务器进行后台同步,以便 1) 检索现有类别 2) 对于每个类别,检索所有文章 因此,我使用了一个nsoperationqueue,在其中添加了我需要的所有网络操作。 我正在创建一个调度队列,并将其设置为所有afnetworking操作的successqueue,以便完成块不会在主线程中执行 在同步结束时,我正在执行一个保存,以便所有数据都保存在PerSitent存储中 我遇到以下问题: 无法建立关系,因为文章和类别是在不同的线程中创建的:我总是有一个例外。 何时以及如何保存核心数据对象? 在阅读了数千篇关于magicalrecord的文章后,我完全不明白这一点Ios AFP记录和适当使用,ios,core-data,afnetworking,magicalrecord,Ios,Core Data,Afnetworking,Magicalrecord,我正在构建一个基于AFNetworking和MagicalRecord的新闻应用程序。 我必须与服务器进行后台同步,以便 1) 检索现有类别 2) 对于每个类别,检索所有文章 因此,我使用了一个nsoperationqueue,在其中添加了我需要的所有网络操作。 我正在创建一个调度队列,并将其设置为所有afnetworking操作的successqueue,以便完成块不会在主线程中执行 在同步结束时,我正在执行一个保存,以便所有数据都保存在PerSitent存储中 我遇到以下问题: 无法建立关系
感谢这个精彩网站的所有ios大师:)最后,我明白我做错了什么 在分开的线程中使用MagicalRecord是关键,因为MagicalRecord会为不同的线程创建不同的NSManagedContext 在深入阅读了关于CoreData和多线程的Apple文档之后,我指出,如果您能够确保所有对象都不会同时受到影响,那么可以在同一个NSManagedContext上处理不同的线程 因此,通过使用一个带有专用和单个NSManagedObjectContext的顺序分派队列,它完成了任务
希望这可以帮助其他人。您考虑过RestKit吗?我不知道这个框架,但在快速查看之后,我似乎无法使用它,因为服务器端根本不是Rest:(发布代码示例会有所帮助。)