关于App的启动顺序

作者: Dwyane_Coding | 来源:发表于2018-06-11 17:27 被阅读305次
    前言:了解你的自定义代码在启动时的执行顺序
    综述:

    启动一个app涉及一系列复杂的步骤顺序,大部分步骤由UIKit自动处理,在启动顺序中,UIKit调用你app delegate 方法,因此你可以执行自定义的任务,图一列举了从app启动到初始化阶段的步骤顺序

    app启动跟初始化顺序

    1、应用程序启动,要么由用户显式启动,要么由系统隐式启动。

    2、xcode提供的main函数调用UIKit的UIApplicationMain函数。

    3、UIApplicationMain函数创建UIApplication对象和你的app委托。

    4、UIKit从主故事板或nib文件加载应用程序的默认界面。

    5、UIKit调用你app delegate中的application:willFinishLaunchingWithOptions:方法。

    6、UIKit执行状态恢复,它调用你的app delegate和视图控制器的其他方法。

    7、UIKit调用你的app delegateapplication:didFinishLaunchingWithOptions:方法。

    初始化完成后,系统将应用程序移动到活跃(前台)状态或后台状态。当你的应用程序移动到活跃状态时,它的窗口会出现在屏幕上,并开始响应用户的交互。当你的应用程序移动到后台状态时,它的窗口是隐藏的,它只会运行一小段时间,然后才会被暂停。

    无论应用程序是在前台还是在后台启动,大多数启动时的初始化代码都应该是相同的。比如,你初始化应用程序的数据并设置应用程序的用户界面。但是,你有一些自定义任务,你只希望在移动到前台或者后台时执行,请检查下UIApplication对象的applicationState属性,UIKit将该属性设置为UIApplicationStateInactive用于移动到前台的应用程序,而UIApplicationStateBackground用于移动到后台的应用程序。

    相关文章

      网友评论

        本文标题:关于App的启动顺序

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