iOS开发之生命周期

2021-07-15  本文已影响0人  宇宙无敌大强子

作为一个iOS开发者,生命周期是我们无时无刻不在打交道,却又被大多数人忽视的一个东西。这篇文章我把我所了解的所有生命周期,都做一个详细的介绍,希望对大家有帮助。

一、App的生命周期

1.App的状态
2.App的生命周期函数
/// App将要启动
/// @param application App对象
/// @param launchOptions 启动参数
- (BOOL)application:(UIApplication *)application willFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    NSLog(@"willFinishLaunchingWithOptions - 将要启动");
    return YES;
}

/// App完成启动(有返回值)
/// @param application App对象
/// @param launchOptions 启动参数
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    NSLog(@"didFinishLaunchingWithOptions - 完成启动(有返回值)");
    return YES;
}

/// App完成启动(无返回值)
- (void)applicationDidFinishLaunching:(UIApplication *)application {
    NSLog(@"applicationDidFinishLaunching - 完成启动(无返回值)");
}

/// App完成激活
- (void)applicationDidBecomeActive:(UIApplication *)application {
    NSLog(@"DidBecomeActive - 完成激活");
}

/// App将要注销激活
- (void)applicationWillResignActive:(UIApplication *)application {
    NSLog(@"WillResignActive - 将要注销激活");
}

/// App完成进入后台
- (void)applicationDidEnterBackground:(UIApplication *)application {
    NSLog(@"DidEnterBackground - 完成进入后台");
}

/// App将要进入前台
- (void)applicationWillEnterForeground:(UIApplication *)application {
    NSLog(@"WillEnterForeground - 将要进入前台");
}

/// App将要终止
- (void)applicationWillTerminate:(UIApplication *)application {
    NSLog(@"WillTerminate - 将要终止");
}

applicationDidFinishLaunchingdidFinishLaunchingWithOptions 这两个都是App完成启动的函数,当两者都写时,执行后者

3.App生命周期的详细说明(依次执行的函数)

启动(未运行 - 激活)
willFinishLaunchingWithOptions
didFinishLaunchingWithOptions
DidBecomeActive

进入后台(激活 - 后台)
WillResignActive 进入后台调用瞬间
DidEnterBackground 已经完全进入后台,iPhone回到桌面

进入前台(后台/多任务 - 激活)
WillEnterForeground App激活瞬间的展示动画
DidBecomeActive 已经完全进入前台,App的画面完全展示

进入多任务再进入前台(激活 - 多任务 - 激活)
WillResignActive 激活 - 多任务
DidBecomeActive 多任务 - 激活
PS 注意这种情况下,从多任务到激活状态,不会调用WillEnterForeground,因为此时App是还在前台的,虽然画面是多任务

杀死App(多任务 - 终止)
DidEnterBackground
WillTerminate

二、ViewController的生命周期

上一篇 下一篇

猜你喜欢

热点阅读