0

我需要添加持久性NSOperationQueue,以便用户可以关闭我的应用程序而不会丢失任何数据。我是核心数据的忠实粉丝,所以我正在寻找一种将我的NSOperation子类存储在核心数据上的方法。

有什么建议吗?

4

1 回答 1

0

我不确定你的问题,但我会尽量给你一些提示。

是的,Core Data 可能是一种有效的方法。我不知道你为什么需要存储一个NSOperation.

相反,我可以建议的是安排您的模型来处理同步操作。特别是,我会为您需要与服务器同步的实体添加一个属性。例如,调用它,isSync并说它是一个BOOL值。

因此,当特定数据与服务器同步并且您收到了良好的响应时,您可以修改该属性以假定该YES值。这意味着已同步特定数据。换句话说,当一个对象(数据)没有同步时,它的isSync值为NO,否则为YES,如果你愿意,你可以删除它。

下次,您可以将isSync有价值的数据同步到NO. 它们尚未同步。其他元素已同步,您可以删除它们以节省设备空间。

要了解如何进行同步,我真的建议阅读这个 stackoverflow 主题How to Sync iPhone Core Data with web server,然后推送到其他设备?.

此外,如果您处理操作,如果用户关闭了应用程序,您需要取消当前操作。在NSOperations 队列和处理应用程序退出中可以找到一个非常有趣的讨论。

显然,可能还有其他解决方案可以实现这一目标,但我认为这可能是实现您想要做的事情的简单方法。

希望有帮助。

于 2012-07-14T15:48:53.620 回答