关于启动一个IOS程序的详细流程图

因为一直以来对于启动一个IOS中间的流程有些懵懵懂懂的,所以专门抽时间详细了解了下中间详细的流程,并做成了一个流程图,这里分享出来给有兴趣的人参考一下。

关于启动一个IOS程序的详细流程图

这里的流程介绍是从点击App的图标开始一直到加载根控制器中间做的事情,大概分成了四个阶段:

  1. Mach-O加载,这个阶段操作系统会为应用创建一个新的线程然后做一些准备工作。
  2. 通过动态链接器Dyld初始化运行环境,开启缓存策略,加载程序相关依赖库(包括二进制文件,流程图中第一步中有提到一些),runtime也是在这里被 初始化。
  3. 执行Main函数。
  4. 执行UIApplicationMain函数。

详细步骤可以看流程图。