我正在尝试存储我的应用的最后发布日期。所以我做了以下事情:
- (void)applicationWillResignActive:(UIApplication *)application {
NSDate *today = [NSDate date];
[[NSUserDefaults standardUserDefaults] setObject:today forKey:@"lastLaunch"];
[[NSUserDefaults standardUserDefaults] synchronize];
}
但是,当我再次重新启动应用并打印出密钥lastLaunch
的对象时,它会显示null
。为什么不存储日期?我用错误的方法吗?我正在运行它并从Xcode终止应用程序。
答案 0 :(得分:0)
NSUserDefaults在iPhone模拟器中很奇怪。我希望您的代码能够在实际设备上运行。
答案 1 :(得分:0)
applicationWillResignActive:在您接到电话时也会被呼叫... 你可以在这里找到更多信息: http://www.cocoanetics.com/2010/07/understanding-ios-4-backgrounding-and-delegate-messaging/
我认为applicationDidEnterBackground是放置代码的更好地方,因为用户可以拒绝拨打电话并返回您的应用...
对于没有多任务处理的iOS3用户,请观看applicationWillTerminate:
在Xcode中停止只会杀死你的应用程序而不需要调用任何东西......