当我从主页按钮失去焦点后重新打开我的应用程序时,我的行为很奇怪。在模拟器上,应用程序屏幕在恢复应用程序之前变为黑色5秒或更长时间。在测试设备上,应用程序要么执行长延迟,要么完全退出并重置为启动状态。我已将NSLog调试注释放在“applicationWillEnterForeground”和“applicationDidBecomeActive”中,但这些注释仅在长时间延迟后出现,因此我现在假设这些函数中没有任何内容会导致此延迟。
我在我的程序中使用以下组件: *标签栏控制器 * 2定时器,地图套件 * IP套接字流 * 24个ViewControllers在故事板上串联起来。 *相当多的背景图像和图像按钮
如果我知道程序的哪些部分导致了这个错误,我很乐意发布代码,但因为它是我无能为力。还有其他人遇到过这种错误吗?我列出的任何组件是否都有导致类似错误的历史记录?
当发现这个错误时,我还处于开发阶段,并且在增量开发过程中我没有通过主页按钮测试失去焦点。其他较小的项目(使用套接字和定时器)在同一测试硬件上没有遭受同样的错误。
我正在使用“applicationWillResignActive”来禁用计时器,并关闭流。我正在使用“applicationDidBecomeActive”重新启动计时器,并重新打开流。延迟发生在“applicationWillEnterForeground”和“applicationDidBecomeActive”运行之前。我还尝试禁用启动流和定时器的代码,但这对bug没有任何影响。
我正在使用xCode4.4.1,ios6,并且专门为iPad构建。
答案 0 :(得分:0)
调试器可能会在你看到你遇到一个断点和applicationWillEnterForeground的代码执行时思考它。我建议您将最新的代码提交给源代码控制并开始一次删除一个部分,直到您看到该行为消失为止。