美文网首页IOS 开发iOS Developer
iOS app启动原理与过程

iOS app启动原理与过程

作者: Rxiaobing | 来源:发表于2016-11-22 08:46 被阅读43次

系统入口函数

int main(int argc, char * argv[]) {

@autoreleasepool {

return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));

}

}

系统入口的代码和参数说明:

argc:系统或者用户传入的参数

argv:系统或用户传入的实际参数

1.根据传入的第三个参数,创建UIApplication对象

2.根据传入的第四个产生创建UIApplication对象的代理

3.设置刚刚创建出来的代理对象为UIApplication的代理

4.开启一个事件循环(可以理解为里面是一个死循环)这个时间循环是一个队列(先进先出)先添加进去的先处理

ios程序启动原理

程序启动的完整过程

1.main函数

2.UIApplicationMain

* 创建UIApplication对象

* 创建UIApplication的delegate对象

3.delegate对象开始处理(监听)系统事件(没有storyboard)

* 程序启动完毕的时候, 就会调用代理的application:didFinishLaunchingWithOptions:方法

* 在application:didFinishLaunchingWithOptions:中创建UIWindow

* 创建和设置UIWindow的rootViewController

* 显示窗口

3.根据Info.plist获得最主要storyboard的文件名,加载最主要的storyboard(有storyboard)

* 创建UIWindow

* 创建和设置UIWindow的rootViewController

* 显示窗口

相关文章

网友评论

    本文标题:iOS app启动原理与过程

    本文链接:https://www.haomeiwen.com/subject/xvkdpttx.html