我想从服务器或数据库中提取一些数据,如果我必须将提取代码放在didFinishLaunchingWithOptions()
函数中,或者将代码放在viewdidload()
函数中,我现在会感到困惑。第一个viewcontroller。这两种方法的执行效率是什么?
答案 0 :(得分:0)
这取决于您的要求。如果您想在实际访问viewController之前获取数据,那么您可以在didFinishLaunching WithOptions中提取数据。但是如果你只想要viewController的数据,那么当你在viewController上时,即在viewController的viewDidLoad中提取它时,它是一个好的做法。
答案 1 :(得分:0)
如果您通过网络获取数据,我肯定建议不使用didFinishLaunchingWithOptions
。此方法中的任何阻止代码都会阻止应用程序的UI加载,因此您甚至无法向用户显示“请稍候”消息。此外,如果didFinishLaunchingWithOptions
阻塞太长时间(我认为超时大约是10秒),iOS将会终止您的应用。
因此,要么在主视图控制器中执行加载,要么在后台队列中异步运行 - 在这种情况下,您当然也可以将代码放在didFinishLaunchingWithOptions
中。