IOS 程序生命周期的原理

一、UIApplication 生命周期

  每一个IOS应用程序都包含一个UIApplication对象,IOS系统通过UIApplication对象监控应用程序生命周期全过程。每一个应用程序都会为UIApplication对象指定一个代理对象,该代理对象用于处理UIApplication对象监控生命周期事件。

二、IOS应用程序拥有5种状态

  1. Not Running: 应用程序还没有启动,或者应用程序正在运行,中途被系统停止。
  2. Inactive:应用程序正在前台运行,但是,并不接收事件。(当前或者正在执行其它代码)
  3. Active : 当前应用程序正在前台运行,并且接收事件。
  4. Background:应用程序处在后台,并且,还在执行代码。
  5. Suspended:应用程序处在后台,并且停止执行代码。

三、代理对象UIApplicationDelegate对象:负责处理UIApplication在生命周期监控的事件。

四、在UIApplication代理对象,与生命周期有关的函数:

 1 //
 2 - (void) applicationWillResignActive: (UIApplication *) application
 3
 4 //
 5 - (void) applicationDidBecomeActive: (UIApplication *) application
 6
 7 //
 8 - (void) applicationDidEnterBackground: (UIApplication *) application
 9
10 //
11 - (void) applicationWillEnterForeground: (UIApplication *) application
12
13 //
14 - (void) applicationWillTerminate: (UIApplication *) application
15
16 //
17 - (void) applicationDidReceiveMemoryWarning: (UIApplication *) application
18
19 //
20 - (void) applicationDidFinsihLaunching: (UIApplication *) application
21
22 //
23 - (BOOL) application: (UIApplication *) application handleOpenURL: (NSURL *) url 

五、UIViewApplication 生命周期

时间: 2025-01-13 18:00:43

IOS 程序生命周期的原理的相关文章

图解ios程序生命周期

图解ios程序生命周期 应用程序启动后状态有Active.Inactive.Background.Suspended.Not running这5种状态,几种状态的转换见下图: 在AppDelegate中实现app状态变化时的回调函数,在 app状态发生变化时,系统会执行相应回调: - (BOOL)application:(UIApplication *)application willFinishLaunchingWithOptions:(NSDictionary *)launchOptions

iOS程序生命周期 AppDelegate

iOS的应用程序的生命周期,还有程序是运行在前台还是后台,应用程序各个状态的变换,这些对于开发者来说都是很重要的. iOS系统的资源是有限的,应用程序在前台和在后台的状态是不一样的.在后台时,程序会受到系统的很多限制,这样可以提高电池的使用和用户体验.//开发app,我们要遵循apple公司的一些指导原则,原则如下:1.应用程序的状态状态如下:Not running  未运行  程序没启动Inactive          未激活        程序在前台运行,不过没有接收到事件.在没有事件处理

IOS应用程序生命周期

1.应用程序状态 1.1.Not running-未运行 程序没有启动 1.2.Inactive-未激活 程序在前台运行,不过没有接受到事件,在没有事件处理下程序同城停留在这个状态 1.3.Active-激活 程序在前台运行并且接受到了事件,这也是前台的一个正常的模式 1.4.Background-后台 程序在后台而且能执行代码,大多数程序进入这个状态后会在这个状态停留一会,时间到了之后会进入挂起状态,有的程序经过特殊的请求后可以长期处于Background状态 1.5.Suspended-挂起

[转]iOS应用程序生命周期(前后台切换,应用的各种状态)详解

转载地址:http://blog.csdn.net/totogo2010/article/details/8048652 iOS的应用程序的生命周期,还有程序是运行在前台还是后台,应用程序各个状态的变换,这些对于开发者来说都是很重要的. iOS系统的资源是有限的,应用程序在前台和在后台的状态是不一样的.在后台时,程序会受到系统的很多限制,这样可以提高电池的使用和用户体验. //开发app,我们要遵循apple公司的一些指导原则,原则如下: 1.应用程序的状态 状态如下: Not running

iOS iOS应用程序生命周期(前后台切换,应用的各种状态)详解

iOS应用程序生命周期(前后台切换,应用的各种状态)详解 http://blog.csdn.net/totogo2010/article/details/8048652

转:iOS应用程序生命周期(前后台切换,应用的各种状态)详解

iOS应用程序生命周期(前后台切换,应用的各种状态)详解 分类: iOS开发进阶2012-10-08 15:35 42691人阅读 评论(30) 收藏 举报 iosapplication任务animationtimerxcode 目录(?)[+] iOS的应用程序的生命周期,还有程序是运行在前台还是后台,应用程序各个状态的变换,这些对于开发者来说都是很重要的. iOS系统的资源是有限的,应用程序在前台和在后台的状态是不一样的.在后台时,程序会受到系统的很多限制,这样可以提高电池的使用和用户体验.

【iOS开发-72】设置状态栏的两种方式、程序生命周期以及更好地理解几大类(对象)之间的关系

(1)设置状态栏的2种方式 --第一种方式就是我们在控制器中设置,系统默认就是交给视图控制器去管理的,这样不同视图控制器可以自定义不同的状态栏如下: -(BOOL)prefersStatusBarHidden{ } -(UIStatusBarStyle)preferredStatusBarStyle{ } --如果我们需要交给UIApplication对象管理(iOS6之前就是),则需要如下设置: 先在info.plist中把默认的设置修改掉: 然后直接用如下代码即可: - (void)view

IOS Application生命周期

应用程序的状态 Not running(未运行):程序没启动 Inactive(未激活):程序在前台运行,不过没有接收到事件.在没有事件处理情况下程序通常停留在这个状态 Active(激活):程序在前台运行而且接收到了事件.这也是前台的一个正常的模式 Backgroud(后台):序在后台而且能执行代码,大多数程序进入这个后台后会在在这个状态上停留一会.时间到之后会进入挂起状态(Suspended).有的程序经过特殊的请求后可以长期处于Backgroud状态 Suspended(挂起):程序在后台

J2EE--Servlet生命周期与原理

Servlet是在服务器上运行的小程序.而在java中应用程序多是在容器中进行生命周期的管理(这里指Tomact容器). Servlet基本的架构图 首先是 web页面通过提交表单 tomact获取传递过来的数据,进行解析 创建HttpSaervletRequest,该对象包含了客户端信息,如表单数据,客户端的主机名称和ip地址. 创建HttpServletResponse对象,可以向浏览器写入数据. 之后是调用Servelt,创建Servelet实例 创建servelet实例的过程中 首先调用