无法在iOS 6上启动调试IPA,它在iOS 5上运行完美

时间:2012-10-19 08:54:09

标签: ios ios5 ios6 crash ipa

在控制台上,我收到此消息:

  

backboardd [51]:BKSendGSEvent错误发送事件类型23:   (ipc / send)超时(0x10000004)

然后它崩溃了。崩溃报告是:

Hardware Model:      iPad2,1
Process:         abc [3243]
Path:            /var/mobile/Applications/...
Identifier:      abc
Version:         ??? (???)
Code Type:       ARM (Native)
Parent Process:  launchd [1]

Date/Time:       2012-10-...
OS Version:      iOS 6.0 (10A403)
Report Version:  104

Exception Type:  00000020
Exception Codes: 0x000000008badf00d
Highlighted Thread:  0

Application Specific Information:
com.abc failed to launch in time

Elapsed total CPU time (seconds): 20.910 (user 20.910, system 0.000), 52% CPU 
Elapsed application CPU time (seconds): 19.898, 50% CPU

发布版在iOS 5和6上都能正常运行。

3 个答案:

答案 0 :(得分:2)

最可能的原因是您的应用程序初始设置需要很长时间才能完成。尝试修改应用程序:didFinishLaunching 方法以减少执行任务。

新的iOS6有一个内置的计时器,如果启动时间太长,它会关闭应用程序。

答案 1 :(得分:2)

尝试将application:didFinishLaunchingWithOptions:方法代码划分为不同的函数调用,并使用除main之外的线程在后台进行调用,并确保application:didFinishLaunchingWithOptions:方法尽快返回

你可以使用

dispatch_async(dispatch_get_main_queue(), ^{
//put your code
 }

答案 2 :(得分:1)

您的应用程序需要很长时间才能启动,然后被iOS杀死。

检查- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions是否尽快返回。

didFinishLaunchingWithOptions:中的某些内容可能会在iOS 6上有所不同,并且需要花费更多时间。一个好主意就是派遣那个任务。