- iOS程序启动时的入口为Supporting Files里的main.m文件
#import <UIKit/UIKit.h>
#import "AppDelegate.h"
int main(int argc, char * argv[]) {
@autoreleasepool {
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
}
其中 UIApplicationMain 函数在官方有具体解释.
该函数具体做的事情为
- 创建一个application对象
- 设置了代理
- 创建一个事件循环(RunLoop)
- 读取info.plist文件
- 创建一个window
- 加载第一个控制器
- 启动后开始从AppDelegate.m中的
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
}
开始运行(一般初始化在此函数内)
- 然后再通过控制器ViewController.m中的
-(void)viewDidLoad
{
[super viewDidLoad];
}
开始运行(一般控件的初始化在此函数内).