1

简报:

应用程序视图控制器堆栈:

Navigation Controller > RootViewController > TabbarController

其中 RootViewController 是一个基本的UIViewController(如菜单),并允许用户UIViewController为即将到来的UITabbarController.

出现:

  • 发生在iPhone 4S, iOS 5
  • 不会发生在iPhone 5, iOS 6
  • 不会发生在任何simulator (iOS 5, 6)

在我导航到UITabbarController(由 4 组成UIViewControllers)后,如果我尝试在选项卡之间切换,App 本身和 XCode 会无限期挂起(5 到 60 秒之间)。我已经禁用了所有后台线程、所有网络流量、每个单例。然而它在调试时仍然挂起。

这在每个运行时发生一次,仅在第一次更改选项卡时发生。

棘手的部分是,如果我断开设备与 XCode 的连接并在不调试的情况下启动应用程序,则不会出现此类行为。我试图确定这个“挂起”发生在哪里。但是我无法捕获导致它的线程/进程。

看起来我的应用程序在此期间阻塞,并且viewDidLoad,viewDidAppear,viewDidDisappear在挂起消失后消息开始回流。

我该如何解决这个问题,找出是什么原因造成的?

我正在使用XCode 4.6.1, iOS base SDK 6.1. 我已经在 , 上启动了这个应用XCode 4.3.2程序iOS base SDK 5.1。然后升级到XCode 4.6.1,就出现了这个问题。

我还分析了该应用程序可能存在的泄漏,没有泄漏,并且可疑应用程序在分析时没有挂起。

我试图解决这个问题好几天了,这有点令人沮丧。如果需要,我可以提供任何其他详细信息。

4

0 回答 0