APP应用程序之所以有生命周期,是因为手机端的资源总是有限的,如果开启了一个APP应用就一直占用着手机资源而不释放,这样就会造成手机资源的消耗殆尽,也因此会对设备的电池、流量、用户交互体验造成影响。所以通过APP应用程序的生命周期,首先是更好的控制APP应用程序,其次是更好的控制及使用手机资源、用户交互体验。
APP应用程序状态
(1)Not running:未运行,即程序没启动
(2)Inactive:未激活,即程序在前台运行,不过没有接收到事件。在没有事件处理情况下程序通常停留在这个状态
(3)Active:激活,即程序在前台运行而且接收到了事件。这也是前台的一个正常的模式
(4)Backgroud:后台,即程序在后台而且能执行代码,大多数程序进入这个状态后会在在这个状态上停留一会。时间到之后会进入挂起状态(Suspended)。有的程序经过特殊的请求后可以长期处于Backgroud状态
(5)Suspended:挂起,即程序在后台不能执行代码。系统会自动把程序变成这个状态而且不会发出通知。当挂起时,程序还是停留在内存中的,当系统内存低时,系统就把挂起的程序清除掉,为前台程序提供更多的内存。
如图所示
APP应用程序各运行状态代理方法(6个常用方法)
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { return YES;}