应用程序在重新获得焦点时崩溃

时间:2013-02-12 02:13:48

标签: ios objective-c ios6 ios-simulator

当我从主页按钮失去焦点后重新打开我的应用程序时,我的行为很奇怪。在模拟器上,应用程序屏幕在恢复应用程序之前变为黑色5秒或更长时间。在测试设备上,应用程序要么执行长延迟,要么完全退出并重置为启动状态。我已将NSLog调试注释放在“applicationWillEnterForeground”和“applicationDidBecomeActive”中,但这些注释仅在长时间延迟后出现,因此我现在假设这些函数中没有任何内容会导致此延迟。

我在我的程序中使用以下组件: *标签栏控制器 * 2定时器,地图套件 * IP套接字流 * 24个ViewControllers在故事板上串联起来。 *相当多的背景图像和图像按钮

如果我知道程序的哪些部分导致了这个错误,我很乐意发布代码,但因为它是我无能为力。还有其他人遇到过这种错误吗?我列出的任何组件是否都有导致类似错误的历史记录?

当发现这个错误时,我还处于开发阶段,并且在增量开发过程中我没有通过主页按钮测试失去焦点。其他较小的项目(使用套接字和定时器)在同一测试硬件上没有遭受同样的错误。

我正在使用“applicationWillResignActive”来禁用计时器,并关闭流。我正在使用“applicationDidBecomeActive”重新启动计时器,并重新打开流。延迟发生在“applicationWillEnterForeground”和“applicationDidBecomeActive”运行之前。我还尝试禁用启动流和定时器的代码,但这对bug没有任何影响。

我正在使用xCode4.4.1,ios6,并且专门为iPad构建。

1 个答案:

答案 0 :(得分:0)

调试器可能会在你看到你遇到一个断点和applicationWillEnterForeground的代码执行时思考它。我建议您将最新的代码提交给源代码控制并开始一次删除一个部分,直到您看到该行为消失为止。