我不确定为什么会这样,但我想一个建议会对我有所帮助。
我有 4 个视图控制器。每当我退出应用程序(应用程序进入后台)并再次打开应用程序时,我的应用程序就会打开,因为它再次启动,它应该打开视图控制器,从那里我关闭了应用程序。
PS:我没有完全关闭应用程序,我只是点击主页按钮,应用程序进入后台。
我还没有在 appdelegate 上写任何东西,这使得这发生了。有什么建议么?
Thanks
根据我的说法,当您的应用每次“重新启动”时,有两种情况
-->如果您的应用程序在 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.
}
当应用程序进入后台时,您可能会遇到异常,因此它会被杀死。也许一些错误的释放?
将您的设备连接到调试器并观察应用程序进入后台时发生的情况。您应该很快就会看到问题所在。
发生这种情况的原因很少。
应用程序在后台运行时可能会崩溃,也许您在应用程序上运行某些代码会在应用程序委托中进入后台,从而导致崩溃。
我想我得到了答案,我检查了 plist,我有
应用程序不在后台运行:是
我将其更改为 NO 并且它起作用了。