iOS 程序启动原理
很多工作一段时间的iOS程序员,总是每天沉浸在代码里,大家总是按照xcode的规定生成项目,然后就开始码代码了,但是大家知道app背后的启动过程吗?当点击程序图标启动程序开始到退出,程序在运行过程中到底执行了哪些代码?只有理解了这个才能游刃有余的掌握iPhone程序的开发。
程序启动的完整过程
1.main函数
2.UIApplicationMain.创建UIApplication对象
3.创建UIApplication的delegate对象
(没有storyboard)
4.delegate对象开始处理(监听)系统事件
* 程序启动完毕的时候, 就会调用代理的application:didFinishLaunchingWithOptions:方法
* 在application:didFinishLaunchingWithOptions:中创建UIWindow
* 创建和设置UIWindow的rootViewController
* 显示窗口
(有storyboard)
4.根据Info.plist获得最主要storyboard的文件名,加载最主要的storyboard
* 创建UIWindow
* 创建和设置UIWindow的rootViewController
* 显示窗口