1.修改AppDelegate.m如下
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { NSLog(@"%@",@"应用启动并进行初始化"); return YES; } - (void)applicationDidBecomeActive:(UIApplication *)application { NSLog(@"%@",@"应用进入前台并处于活动状态"); } - (void)applicationWillResignActive:(UIApplication *)application { NSLog(@"%@",@"应用从活动状态进入到非活动状态"); } - (void)applicationDidEnterBackground:(UIApplication *)application { NSLog(@"%@",@"应用进入后台"); } - (void)applicationWillEnterForeground:(UIApplication *)application { NSLog(@"%@",@"应用进入前台,但是还没有处于活动状态"); } - (void)applicationWillTerminate:(UIApplication *)application { NSLog(@"%@",@"应用被终止"); }
2.状态分析
(1)打开应用
-》应用启动并进行初始化(didFinishLaunchingWithOptions)-》应用进入前台并处于活动状态(applicationDidBecomeActive)
(2)按下Home键
-》应用从活动状态进入到非活动状态(applicationWillResignActive)-》应用进入后台(applicationWillEnterForeground)
(3)重新打开应用
-》应用进入前台,但是还没有处于活动状态(applicationWillEnterForeground)-》应用进入前台并处于活动状态(applicationDidBecomeActive)
(4)应用已打开,显示底部任务栏
-》应用进入前台并处于活动状态(applicationDidBecomeActive)
(5)应用已打开,隐藏底部任务栏
-》应用从活动状态进入到非活动状态(applicationWillResignActive)
(6)如下操作强制关闭应用
不调用应用被终止(applicationWillTerminate)
相关推荐
iOS应用程序的生命周期.pdf
应用程序的生命周期
今天我们接触一下iOS应用程序的生命周期, iOS的入口在main.m文件: int main(int argc, char * argv[]) { @autoreleasepool { return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class...
PPT 讲述IOS 应用的生命周期 非常详细 易懂 适合入门选手
快速调试测试构建
iOS的应用程序的生命周期,还有程序是运行在前台还是后台,应用程序各个状态的变换,这些对于开发者来说都是很重要的。 iOS系统的资源是有限的,应用程序在前台和在后台的状态是不一样的。在后台时,程序会受到系统...
iOS应用程序一般都是由自己编写的代码和系统框架(systemframeworks)组成,系统框架提供一些基本infrastructure给所有App来运行,而你提供自己编写的代码来定制App的外观和行为。因此,了解iOSInfrastructure和它们...
iOSAppLifeCycleTest 研究iOS应用程序生命周期
每个人都试图在其应用程序生命周期的某个时刻实现缓存,这就是我们的事。 这是一个库,允许人们使用生存时间(TTL)值和语义来缓存NSData进行磁盘管理。 ? 每个人都试图在其应用程序生命周期的某个时刻实现缓存,这...
**iOS开发介绍:** iOS是由苹果公司推出的移动操作系统,专为iPhone、iPad、iPod Touch等设备设计。iOS应用程序通常使用Swift或Objective-C编程语言进行开发。以下是iOS开发的一些关键方面: ...掌握iOS生命周期:
iOS启动框架,支持启动生命周期分发,启动任务分布式注册,启动任务依赖,支持设置启动任务在各生命周期的优先级,执行所在线程以及对其他启动任务的依赖。根据启动任务的依赖关系,检测循环依赖,并发执行,提升...
每个人都试图在其应用程序生命周期的某个时刻实现缓存,这就是我们的事。 这是一个库,允许人们使用生存时间(TTL)值和语义来缓存NSData进行磁盘管理。 :mobile_phone: iOS 8.0以上 :laptop: OS X 10.10以上 建筑...
可怕的iOS面试问题testCode 通过示例研究iOS面试问题
使用nib和故事板技术创建HelloWorld,通过HelloWorld我们讨论了iOS工程模板、应用的运行机制和生命周期、视图器的生命周期。最后介绍API帮助文档和官方案例的使用。 第3章“iOS常用设计模式”。 iOS开发中常用的4种...
钟2级,六堂课深入了解每个人的必备iOS应用:时钟。 教给学生有关Interface Builder,UILabel,IBOutlets,模型,视图,控制器,NSTimer以及如何处理设备方向的知识。贡献参见 。执照这项工作由Yong Bakos根据。
它通过 hook 掉 alloc,dealloc,retain,release 等方法,来记录对象的生命周期。具体的检测内存泄露的方法和原理,与 Instrument 的 Allocations 一致。然而它跟 Allocations 一样,存在的问题是,你需要一个个...