码迷,mamicode.com
首页 > 移动开发 > 详细

IOS应用程序生命周期

时间:2014-07-25 16:42:21      阅读:358      评论:0      收藏:0      [点我收藏+]

标签:style   os   io   for   re   c   cti   代码   

1、应用程序状态

1.1、Not running-未运行

程序没有启动

1.2、Inactive-未激活

程序在前台运行,不过没有接受到事件,在没有事件处理下程序同城停留在这个状态

1.3、Active-激活

程序在前台运行并且接受到了事件,这也是前台的一个正常的模式

1.4、Background-后台

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

1.5、Suspended-挂起

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

2、生命周期方法

2.1、– application:willFinishLaunchingWithOptions:

告诉代理进程启动但还没进入状态保存

2.2、– application:didFinishLaunchingWithOptions:

告诉代理启动基本完成程序准备开始运行

2.3、– applicationDidBecomeActive:

当应用程序进入活动状态执行

2.4、– applicationWillResignActive:

当应用程序将要入非活动状态执行,在此期间,应用程序不接收消息或事件,比如来电话

2.5、– applicationDidEnterBackground:

当程序被推送到后台的时候调用

// 可以再block中开始后台任务

[application beginBackgroundTaskWithExpirationHandler:^{

       

        NSLog(@"begin Background Task With Expiration Handler");

       

}];

2.6、– applicationWillEnterForeground:

当程序从后台将要重新回到前台时候调用

2.7、– applicationWillTerminate:

当程序将要退出是被调用

2.8、– applicationDidFinishLaunching:

This method is used in earlier versions of iOS to initialize the app and prepare it to run. In iOS 3.0 and later, you should use the application:didFinishLaunchingWithOptions: instead. In iOS 6.0 and later, you may also use the application:willFinishLaunchingWithOptions: method to initialize your app.

3、相关操作

3.1、程序启动

1、– application:willFinishLaunchingWithOptions:

2– application:didFinishLaunchingWithOptions:

3、– applicationDidBecomeActive:

3.2、进入后台

1、– applicationWillResignActive:

2、– applicationDidEnterBackground:

3.3、进入前台

1– applicationWillEnterForeground:

2、– applicationDidBecomeActive:

3.3、关闭程序

1、– applicationDidEnterBackground:

2、– applicationWillTerminate:

IOS应用程序生命周期,布布扣,bubuko.com

IOS应用程序生命周期

标签:style   os   io   for   re   c   cti   代码   

原文地址:http://www.cnblogs.com/cqchen/p/3867915.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!