在我的应用程序中,当用户单击“主页”按钮时,我将数据保存在NSUserDefaults中。应用程序在后台运行。当用户重新启动应用程序时,我使用applicationWillEnterForeground方法显示保存的数据。

但是,当用户双击主屏幕按钮并通过在应用程序上选择减号退出应用程序时,我需要以相同的用户默认设置保存不同的数据。但是,当我退出应用程序时,有时会调用applicationWillTerminate,有时不会调用。

因此,如何区分该应用程序是最小化还是已退出?

最佳答案

每当用户仅点按一次,应用程序就会在那时进入后台 applicationDidEnterBackground 始终会调用。在这种方法中,您可以临时更新/存储您的NSUserDefaults值。

如果出现这种情况,应用程序将再次出现在前台而不会通过双击终止, applicationDidBecomeActive 将被调用,您可以在其中再次更新/删除临时存储的NSUserDefaults值。如果用户双击退出应用程序,则存储的值将与NSUserDefaults一起保存。

关于iphone - 区分applicationDidEnterBackground和applicationWillTerminate,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10477053/

10-15 15:26