我需要向NSOperationQueue
添加持久性,因此用户可以关闭我的应用程序而不会丢失任何数据。
我是核心数据的忠实粉丝,所以我正在寻找一种方法来将我的NSOperation
子类存储在核心数据上。
有什么建议吗?
答案 0 :(得分:0)
我不确定你的问题,但我会尝试给你一些提示。
是的,核心数据可能是一种有效的方法。我不知道您需要存储NSOperation
。
相反,我可以建议您安排模型来处理同步操作。特别是,我会向您需要与服务器同步的实体添加一个属性。例如,调用它isSync
并说它是BOOL
值。
因此,当特定数据与服务器同步并且您收到了良好响应时,您可以修改该属性以采用YES
值。这意味着已同步特定数据。换句话说,当一个对象(数据)未同步时,其isSync
值为NO
,否则为YES
,如果需要,您可以将其删除。
下次,您可以将isSync
值的数据同步到NO
。他们尚未同步。其他元素已经同步,您可以删除它们以节省设备空间。
要了解如何进行同步,我真的建议您阅读此stackoverflow主题How to Sync iPhone Core Data with web server, and then push to other devices?。
此外,如果您处理操作,则需要在用户关闭应用程序时取消当前操作。可以在Queue of NSOperations and handling application exit中找到一个非常有趣的讨论。
显然可能有其他解决方案来实现这一目标,但我认为这可能是实现您想要做的事情的简单方法。
希望有所帮助。