存储超出applicationWillTerminate的值

我在苹果的iOS开发中心search,但找不到任何正确的东西。 这是我的问题:

我有一个使用CoreData与几个实体的应用程序。 数据通过服务器dynamic更新。 现在,每次应用程序变为活动状态时都会调用checkForUpdates ,但是只有在自上次更新以来经过了一段时间后才会执行。

checkForUpdates最终被执行时,它会更新所有的内容,根据最后一次更新完成后,检查服务器上的版本是否是最新的。

我有一个types为NSDate Updater类中的局部variables,它包含上次成功完成更新的时间。 我需要能够以某种方式存储这个值,而不是终止应用程序。

我想知道什么是最具成本效益的记忆方式和性能方面。 看着iOS开发中心,我首先想到了应用程序首选项,但由于它只是一个单一的值,所以我认为会有一个更简单的方法。 对不起,如果这真的很容易,但我是新的Objective-C和iOS编程。

任何帮助,将不胜感激! 如果需要更多信息,请随时在下面发表评论。

编辑:简单地创build一个NSDate属性的新实体,并简单地保持我的数据库中的lastUpdateTimevariables是一个好主意?

最好的问候,Octoshape

听起来就像你想NSUserDefaults存储。 它像字典一样使用,但仍然存在:

 [[NSUserDefaults standardUserDefaults] setObject:myDate forKey:@"LastUpdateTime"]; 

使用NSUserDefaults来存储上次更新时间。

当您的更新程序成功完成后,将成功时间写入您的应用程序默认值,这样您的下次启动即可访问,并且您可以随时致电。

Swift 2.X版本

 NSUserDefaults.standardUserDefaults().setObject(NSDate(), forKey: "Last_Modified")