码迷,mamicode.com
首页 > 移动开发 > 详细

App 不能启动错误:“failed to launch in time”

时间:2015-01-19 17:14:56      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:

App不能启动。设备日志输出:

MyApp failed to launch in time

Elapsed total CPU time (seconds): 13.700 (user 8.580, system 5.120), 67% CPU  Elapsed application CPU time(seconds): 6.180, 30% CPU

 

同时:

1、该App在模拟器中不会出现此问题。

2、在Debug模式(连接设备)也不会出现此问题,App能正常启动。

3、App 商店不会拒绝App的提交。当然,很可能苹果测试人员使用的设备要比你的快。

4、如果用户使用一些老设备,如3GS,则会出现此问题。

……

 

凡此种种,都表明,你在didFinishLaunchingWithOptions方法中加入了太多的代码。

这是因为,如果App主线程的启动时间过长,iOS会强制终止App运行。

 

解决的办法很简单,将didFinishLaunchingWithOptions方法中比较“费时”的代码(比如openURL其实是一个很费时的操作)放到后台线程中进行:

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0),  { () -> Void in

if true== UIApplication.sharedApplication().canOpenURL(NSURL(string: "xxx://")!){

    UIApplication.sharedApplication().openURL(NSURL(string:"xxx://")!)

}

})

 

App 不能启动错误:“failed to launch in time”

标签:

原文地址:http://blog.csdn.net/kmyhy/article/details/42875397

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!