IOS应用程序生命周期
一、IOS应用的5种状态
Not Running(非运行状态) 应用没有运行或被系统终止。
Inactive(前台非活动状态) 应用正在进入前台状态,但是还不能接受事件处理。
Active(前台活动状态) 应用进入前台状态,能接受事件处理。
Background(后台状态) 应用进入后台后,依然能够执行代码。如果有可执行的代码,就会执行代码。
Suspended(挂起状态) 自行挂起的应用进入一种“冷冻”状态,不能执行代码。如果系统内存不够,应用会被终止。
二、IOS应用状态变更时对应的方法说明
| 方法 | 本地通知 | 说明 |
| application:didFinishLaunchingWithOptions: | UIApplicationDidFinshLaunchingNotification | 应用启动并进行初始化时会调用该方法并发出通知。这个阶段会实例化根视图控制器 |
| applicationDidBecomeActive | UIApplicationDidBeconmeActiveNotification | 应用进入前台并处于活动状态时调用该方法并发出通知。这个阶段可以恢复UI状态(例如游戏状态等) |
| applicationWillResignActive | UIApplicationWillResignActiveNotification | 应用从活动状态进行到非活动状态时调用该方法并发出通知。这个阶段可以保存UI状态(例如游戏状态等) |
| applicationDidEnterBackground | UIApplicationDidEnterBackgroundNotificaiton | 应用进入后台时调用该方法并发出通知。这个阶段可以保存用户数据,释放一些资源(例如释放数据库资源等) |
| applicationWillEnterForeground | UIApplicationWillEnterForegroundNotification | 应用进入到前台,但还没有处于活动状态时调用该方法并发出通知。这个阶段可以恢复数据用户 |
| applicationWillTerminate | UIApplicationWillTerminateNotification | 应用被终止时调用该方法并发出通知,但内存清除时除外。这个阶段释放一些资源,也可以保存用户数据 |
IOS应用程序生命周期的更多相关文章
- (转)iOS应用程序生命周期(前后台切换,应用的各种状态)详解
原文:http://blog.csdn.net/totogo2010/article/details/8048652 iOS应用程序生命周期(前后台切换,应用的各种状态)详解 分类: ...
- 转:iOS应用程序生命周期(前后台切换,应用的各种状态)详解
iOS应用程序生命周期(前后台切换,应用的各种状态)详解 分类: iOS开发进阶2012-10-08 15:35 42691人阅读 评论(30) 收藏 举报 iosapplication任务anima ...
- IOS应用程序生命周期&启动周期函数
—程序的生命周期 a.程序的生命周期是指应用程序启动到应用程序结束整个阶段的全过程 b.每一个IOS应用程序都包含一个UIApplication对象,IOS系统通过该U ...
- iOS学习笔记(四)——iOS应用程序生命周期
开发应用程序都要了解其生命周期,开始接触android时也是从应用程序生命周期开始的,android的应用程序生命周期更多是其组件的生命周期,例如Activity.Service.今天我们接触一下iO ...
- iOS 应用程序生命周期
开发应用程序都要了解其生命周期. 今天我们接触一下iOS应用程序的生命周期, iOS的入口在main.m文件: int main(int argc, char * argv[]) { @autorel ...
- IOS应用程序生命周期的AppDelegate详解
IOS 中的 AppDelegate.m/h 文件是很重要的呢,因为它是对 Application 的整个生命周期进行管理的. 先明白,每个iPhone应用程序都有一个UIApplication,UI ...
- [转]iOS应用程序生命周期(前后台切换,应用的各种状态)详解
转载地址:http://blog.csdn.net/totogo2010/article/details/8048652 iOS的应用程序的生命周期,还有程序是运行在前台还是后台,应用程序各个状态的变 ...
- IOS应用程序生命周期详解
第一. IOS应用程序的五种状态: 1. Not running:应用还没有启动,或者应用正在运行但是途中被系统停止. 2. Inactive:当前应用正在前台运行,但是并不接收事件(当前或许正在执行 ...
- iOS开发应用程序生命周期
各个程序运行状态时代理的回调: - (BOOL)application:(UIApplication *)application willFinishLaunchingWithOptions:(NSD ...
随机推荐
- 在RAC中,当私有网线拔了后,会怎么样?
原文链接http://blog.mchz.com.cn/?p=4305 实际环境: OS:oel5.5_x64 ORACLE:10205 3节点rac 架设于vmware esxi虚拟机上 所需测试项 ...
- T4 模板的调试方法,方便大家遇到问题自己快速定位和优化
T4 模板的调试方法,方便大家遇到问题自己快速定位和优化 :1. .ttinclude文件的第一行修改为 <#@ template language="C#" debug=& ...
- Android——getSystemService
android的后台运行在很多service,它们在系统启动时被SystemServer开启,支持系统的正常工作,比如MountService监 听是否有SD卡安装及移除,ClipboardServi ...
- The Ninth Hunan Collegiate Programming Contest (2013) Problem I
Problem I Interesting Calculator There is an interesting calculator. It has 3 rows of button. Row 1: ...
- 慕课网-安卓工程师初养成-2-5 如何命名Java变量
来源:http://www.imooc.com/code/1221 如同酒店会给每个房间起个性化的名字一样,程序中的变量也需要用合理的名字进行管理---变量名! 需要注意,给酒店房间起名字时可以是数字 ...
- php文件大小单位转换GB MB KB
private function formatBytes($size){ $units = array('字节','K','M','G','T'); $i = 0; for( ; $size>= ...
- 再看.net本质
1.[资源的地址-通用资源标识符] 我们在地址栏中输入的内容称为通用资源标识符(Universal Resource Identifier,URI),它有很多种形式,在Web中我们通常使用称为统一资源 ...
- JS HasMap使用
function HashMap() { var size = 0; var entry = new Object(); this.put = function (key, value) { entr ...
- leetcode007. Reverse Integer
/* a good way to predict overflow * each time *10 must predict int overflow * not only the last time ...
- sql server命名规范
命名规范 表 表名如Order/UserAccout 符合以下规范: 1. 统一采用单数形式,反对Orders 2. 首字母大写,多个单词的话,单词首字母大写,反对order/User ...