我想问一下,只要用户完全退出应用程序,就会调用哪种方法。
我的意思是退出应用程序完全是在用户点击主页按钮后,应用程序实际上在后台运行,但每当用户双击主页按钮,然后点击并按住应用程序图标,然后点击RED MINUS签收退出应用程序。
我试图在应用程序转到后台时保存我的数据,并在应用程序返回活动(前台)时加载数据。只要我没有完全退出应用程序,它就可以正常工作。
如果我通过点击红色减号退出应用并再次重新启动应用,我所保存的所有数据都将消失?奇怪的情况是,有时它被保存并且可以加载,但大多数情况下它不会被保存。
我用我的保存方法仔细检查并尝试NSLog它,我得到了所有数据保存但只是不知道为什么在用户通过点击红色减号退出应用程序后无法加载。
有人知道我的应用会发生什么吗?顺便说一句,我正在使用NSUserDefaults来保存我的数据并加载我的数据。
[appDefaults setObject:object objectForKey:@“key”]; [appDefaults objectForKey:@“key”];
答案 0 :(得分:1)
为什么要等到应用程序退出保存数据?为什么不在你拿到它之后立即保存它?
但是,如果您必须在退出前保存数据,请使用:-[<UIApplicationDelegate> applicationWillTerminate:]
方法。
答案 1 :(得分:0)
NSUserDefaults
会定期保存您提供的值,而不一定是应用程序终止时的值。要确保将您的设置写入磁盘,请在-synchronize
中的默认对象上调用-applicationWillTerminate:
方法。