美文网首页
浅入浅出 iOS 应用程序的生命周期

浅入浅出 iOS 应用程序的生命周期

作者: 213dfddbef5e | 来源:发表于2017-02-26 15:17 被阅读20次

    应用程序的生命周期

    iOS 的应用程序主要由未运行、未激活、激活、后台、挂起这五个状态组成,每个状态具体的描述如下:


    状态描述

    (1)未运行(Not Running):程序未启动

    (2)未激活(Inactive):程序在前台运行,不过没有接收到事件。在没有事件处理情况下程序通常停留在这个状态

    (3)激活(Active):程序在前台运行而且接收到了事件,这也是前台的一个正常的模式

    (4)后台(Backgroud):程序在后台而且能执行代码,大多数程序进入这个状态后会在这个状态上停留一会。时间到之后会进入挂起状态(Suspended)。有的程序经过特殊的请求后可以长期处于Backgroud状态

    (5)挂起(Suspended):程序在后台不能执行代码。系统会自动把程序变成这个状态而且不会发出通知。当挂起时,程序还是停留在内存中的,当系统内存低时,系统就把挂起的程序清除掉,为前台程序提供更多的内存。

    AppDelegate 回调函数

    (1) 通知进程已启动但还未进入到状态保存

    - (BOOL)application:(UIApplication *)application willFinishLaunchingWithOptions:(NSDictionary *)launchOptions
    

    (2) 通知启动完成程序准备开始运行

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
    

    (3) 当应用程序将要进入非活动状态,在此期间应用程序不接收消息或事件,如电话来了

    - (void)applicationWillResignActive:(UIApplication *)application
    

    (4) 当应用程序进入到活动状态调用

    - (void)applicationDidBecomeActive:(UIApplication *)application
    

    (5) 当程序进入到后台时被调用,

    - (void)applicationDidEnterBackground:(UIApplication *)application
    

    (6) 当应用程序将要从后台进入到前台的时候调用

    - (void)applicationWillEnterForeground:(UIApplication *)application
    

    (7) 当应用程序将要退出,通常用来保存数据和一些退出前的清理工作

    - (void)applicationWillTerminate:(UIApplication *)application
    

    (8) 当程序载入后执行

    - (void)applicationDidFinishLaunching:(UIApplication*)application
    

    来源:http://blog.devzeng.com/blog/ios-viewcontroller-lifecycle.html

    相关文章

      网友评论

          本文标题:浅入浅出 iOS 应用程序的生命周期

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