我不确定为什么会这样,但我想一个建议会对我有帮助。
我有4个视图控制器。当我从应用程序退出(应用程序转到后台)并再次打开应用程序时,我的应用程序打开,因为它再次启动,而不是它应该打开viewcontroller,从我关闭应用
PS:我没有完全关闭应用程序,我只是点击主页按钮,应用程序转到后台。
我没有在appdelegate上写任何东西,这使得这种情况发生了。有什么建议吗?
Thanks
答案 0 :(得分:5)
据我所知,您的应用每次都会“重新启动”有两种情况
- > 如果您的应用在按下iphone上的主页按钮时崩溃。
检查您的应用是否在进入非活动模式时执行任何操作。为此,请检查applicationWillResignActive
方法。
- > 如果您在UIApplicationExitsOnSuspend
文件中设置了.plist
标记。
当用户切换到另一个应用程序时,这将导致应用程序无法进入后台。
如果您仍然无法解决问题,那么我建议您在applicationDidFinishLaunching
方法中添加异常处理程序
- (void)applicationDidFinishLaunching:(UIApplication *)application {
NSSetUncaughtExceptionHandler(&uncaughtExceptionHandler);
// The rest if you code ....
}
void uncaughtExceptionHandler(NSException *exception) {
// You code here, you app will already be unload so you can only see what went wrong.
}
答案 1 :(得分:3)
当应用程序转到后台时,您可能会收到异常,因此它会被杀死。也许是一些错误的释放?
将您的设备连接到调试器,并观看当您的应用进入后台时发生的情况。您应该很快就会看到问题。
答案 2 :(得分:2)
发生这种情况的原因很少。
应用程序可能正在崩溃,因为它正在后台运行,也许您正在运行应用程序上的某些代码将进入应用程序委托中的后台,这会导致崩溃。
答案 3 :(得分:0)
我想我得到了答案,我检查了plist,我有
应用程序不在后台运行:是
我将它改为NO并且有效。