iOS 中应用程序的启动原理

2016-05-09  本文已影响64人  SunZzzl

    程序启动时执行main函数,在main函数当中有以下操作.

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

            @autoreleasepool {

前两个参数不用在意,是系统做的事情,我们在这只需关注第三个第四个参数的含义

第三个参数:UIApplication类名或者子类的名称 nil == @"UIApplication"

第四个参数:UIApplication的代理的代理名称

NSStringFromClass:把类名转化字符串

NSStringFromClass好处:1.有提示功能 2.避免输入错误

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

}

}


程序的启动流程

1.执行Main

2.执行UIApplicationMain函数.

3.创建UIApplication对象,并设置UIApplicationMain对象的代理.

UIApplication的第三个参数就是UIApplication的名称,如果指定为nil,它会默认为UIApplication.

UIApplication的第四个参数为UIApplication的代理.

4.开启一个主运行循环.保证应用程序不退出.

5.加载info.plist.加载配置文件.判断一下info.plist文件当中有没有Main storyboard file base name

里面有没有指定storyboard文件,如果有就去加载info.plist文件,如果没有,那么应用程序加载完毕.

上一篇下一篇

猜你喜欢

热点阅读