IOS应用程序的生命周期

程序的生命周期是指应用程序启动到结束整个阶段的全过程

每一个ios应用程序都包含一个UIApplication对象,ios系统通过UIApplication对象来监控应用程序生命周期的全过程

每个ios应用程序都要给其UIApplication对象指定一个代理来监听整个应用程序的生命周期事件

ios应用程序的5种状态:
1.not  running 未启动,或者正在运行但被系统停止

2.inactive:当前应用正在前台运行,但不接受事件,一般是从一种状态切换到另一种状态时会停留在此状态,如锁屏、或者突然来电、

3.active :  当前应用正在前台运行,并且接受事件

4.backgroud:应用处在后台,并且已经停止执行代码,大多数要进入Suspended状态的应用,会在此状态停留一会,但是有额外申请要执行在后台的应用,会在此状态保持更长一段事件。

5.Suspended:应用处在后台,并停止执行代码。系统自动将应用移入此状态,并且此举之前不会通知这个程序,此状态应用只是在内存中但不执行任何代码,系统内存警告时,就会清除此状态下的应用占用的内存。

一创建UIApplication对象并制定其代理

int main(int argc, char * argv[]) {

    @autoreleasepool {

        return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));

    }

}


代理方法:

应用完成启动项

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

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

- (void)applicationWillResignActive:(UIApplication *)application

当程序被推送到后台的时候调用。所以要设置后台继续运行,则在这个函数里面设置即可

- (void)applicationDidEnterBackground:(UIApplication *)application

当程序从后台将要重新回到前台时候调用,这个刚好跟上面的那个方法相反。

- (void)applicationWillEnterForeground:(UIApplication *)application

当应用程序入活动状态执行,这个刚好跟上面那个方法相反

- (void)applicationDidBecomeActive:(UIApplication *)application 

当程序将要退出是被调用,通常是用来保存数据和一些退出前的清理工作

- (void)applicationWillTerminate:(UIApplication *)application

当应用程序接受到内存警告时会调用

-(void)applicationDidReceiveMemoryWarning:(UIApplication *)application

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值