`
stephen830
  • 浏览: 2977535 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

iOS程序运行生命周期

 
阅读更多

iOS程序运行生命周期

 

 

在文件AppDelegate.m中定义了iOS程序运行的各个生命周期,清楚了解程序运行中的每个生命周期,对于我们的开发工作将提供极大的帮助。下面代码就是AppDelegate.m中各生命周期对应的方法。

 

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    NSLog(@"didFinishLaunchingWithOptions");
    return YES;
}
- (void)applicationWillResignActive:(UIApplication *)application {
    NSLog(@"applicationWillResignActive");
}
- (void)applicationDidEnterBackground:(UIApplication *)application {
    NSLog(@"applicationDidEnterBackground");
}
- (void)applicationWillEnterForeground:(UIApplication *)application {
    NSLog(@"applicationWillEnterForeground");
}
- (void)applicationDidBecomeActive:(UIApplication *)application {
    NSLog(@"applicationDidBecomeActive");
}
- (void)applicationWillTerminate:(UIApplication *)application {
    NSLog(@"applicationWillTerminate");
}

 

 在上面的代码中,每个生命周期的方法中都加入了NSLog输出,就可以让我们很清楚的知道生命周期的调用时机了。接下来我们对程序运行的各种情况进行分析:

 

 

情况1:点击程序icon开始运行(首次运行)

输出日志:

2015-11-10 09:05:27.744 demo010[82333:1062790] didFinishLaunchingWithOptions
2015-11-10 09:05:27.744 demo010[82333:1062790] applicationDidBecomeActive

 

情况2:程序运行中,按home键

输出日志:

2015-11-10 09:30:53.671 demo010[82333:1062790] applicationWillResignActive
2015-11-10 09:30:54.254 demo010[82333:1062790] applicationDidEnterBackground

 

情况3:程序运行中按home键之后重新再点击程序icon继续运行

输出日志:

2015-11-10 09:40:42.469 demo010[82333:1062790] applicationWillEnterForeground
2015-11-10 09:40:42.987 demo010[82333:1062790] applicationDidBecomeActive

 

情况4:程序运行中下拉状态栏,界面显示状态栏信息(如下图1)

输出日志:(注意:这里只调用applicationWillResignActive!!!

2015-11-10 09:44:14.655 demo010[82333:1062790] applicationWillResignActive

 (图1)

 

情况5:关闭上图1中的状态栏界面,重新显示程序界面

输出日志:(注意:这里同样也只调用applicationDidBecomeActive,与上面情况4对应 !!!

2015-11-10 09:58:16.066 demo010[82333:1062790] applicationDidBecomeActive

 

情况6:程序运行中,按电源键(锁屏)

输出日志:(注意:与情况2相同)

2015-11-10 10:02:59.205 demo010[82333:1062790] applicationWillResignActive
2015-11-10 10:02:59.205 demo010[82333:1062790] applicationDidEnterBackground

 

情况7:在情况6的基础上,再按电源键(解除锁屏)

输出日志:(注意:与情况3相同)

2015-11-10 11:03:08.704 demo010[316:84616] applicationWillEnterForeground
2015-11-10 11:03:09.086 demo010[316:84616] applicationDidBecomeActive

 

情况8:程序运行中,双击home键(如下图2)

输出日志:(注意:与情况4相同)

2015-11-10 11:13:33.282 demo010[331:87016] applicationWillResignActive

(图2)

 

情况9:点击上图2中的自己的程序应用(注意是点击,而不是将其上滑删除),以便继续运行。

输出日志:(注意:与情况5相同)

2015-11-10 11:22:22.370 demo010[331:87016] applicationDidBecomeActive

 

情况10:在上图2的情况下,将程序应用上滑删除。

输出日志:

2015-11-10 11:24:11.935 demo010[331:87016] applicationDidEnterBackground
2015-11-10 11:24:11.980 demo010[331:87016] applicationWillTerminate

 

 

 

 

 

 

 

 

 

  • 大小: 49.1 KB
  • 大小: 549.8 KB
分享到:
评论

相关推荐

    ios 程序启动动画 demo

    在iOS开发中,程序启动动画(也称为启动屏幕或闪屏)是用户打开应用时首先看到的界面,它为应用程序加载内容提供了一种视觉上的反馈。"ios程序启动动画 demo"是一个示例项目,用于展示如何在自己的iOS应用中实现...

    老生常谈iOS应用程序生命周期

    iOS应用程序生命周期知识点总结 iOS应用程序生命周期是指应用程序从启动到终止的整个过程。这个过程中,应用程序会经历多个状态,例如启动、激活、暂停、后台等。了解应用程序生命周期是开发iOS应用程序的基础。 ...

    apple程序生命周期

    程序生命周期涉及到从应用程序启动、运行、暂停、后台处理、恢复直至关闭的全过程。对于iPhone开发来说,掌握这个生命周期有助于编写更加高效和响应良好的应用。 首先,让我们回顾一下Objective-C中的协议...

    delphi IOS lifecycle 生命周期 后台

    在iOS平台上,使用Delphi开发应用时,理解并掌握应用程序的生命周期管理至关重要。生命周期是指一个应用程序从启动到关闭的过程中所经历的各种状态变化。本篇文章将深入探讨Delphi iOS应用程序的生命周期,以及如何...

    IOS 生命周期

    生命周期管理关乎应用程序从启动到关闭的每一个阶段,包括初始化、界面加载、用户交互、后台运行以及终止等过程。本教程通过两个Demo项目,旨在帮助初学者清晰地理解iOS应用程序的生命周期。 第一个Demo是一个空白...

    ios 程序在后台运行的demo

    3. **应用生命周期管理**:通过正确管理应用的生命周期,例如在`AppDelegate`中处理`applicationDidEnterBackground:`和`applicationWillEnterForeground:`方法,可以确保关键操作在适当的时候执行。 4. **持久化...

    xamarin学习笔记B02(ios程序启动了解)

    2. **iOS程序启动流程**:iOS应用的启动通常始于Main函数,但这在Xamarin中有所不同。Xamarin.iOS的应用启动从`AppDelegate.FinishedLaunching`方法开始,这是iOS应用生命周期中的第一个方法,类似于Android的`...

    iOS完整程序代码

    13. **App生命周期和后台模式**:了解应用的启动、运行、暂停、恢复和终止过程,以及如何在后台执行任务。 14. **国际化和本地化**:如果代码包含多语言支持,你将学习到如何为应用添加不同的语言版本。 通过"森哥...

    ios应用程序 启动视频

    5. **代码实现**:在`AppDelegate.swift`或`SceneDelegate.swift`中,根据你的iOS版本,你需要导入`UIKit`或`SceneKit`库,然后在相应的生命周期方法中设置视频播放。例如,在`scene(_:willConnectTo:options:)`方法...

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

    iOS的应用程序的生命周期,还有程序是运行在前台还是后台,应用程序各个状态的变换,这些对于开发者来说都是很重要的。 iOS系统的资源是有限的,应用程序在前台和在后台的状态是不一样的。在后台时,程序会受到系统...

    iOSAppLifeCycleTest:研究iOS应用程序生命周期

    在iOS开发中,应用程序生命周期是每个开发者都需要深入理解的关键概念。这个项目,"iOSAppLifeCycleTest",显然是一个用于探索和测试iOS应用在不同场景下生命周期行为的实验平台。我们将主要聚焦于Swift编程语言环境...

    深度解析iOS应用程序的生命周期

    iOS应用程序一般都是由自己编写的代码和系统框架(systemframeworks)组成,系统框架提供一些基本infrastructure给所有App来运行,而你提供自己编写的代码来定制App的外观和行为。因此,了解iOSInfrastructure和它们...

    生命周期计算

    标签“生命周期计算”进一步强调了这个主题的核心,这可能是一个应用程序或者在线服务,专门设计用于计算与孕育生命相关的各种周期和时间点。在IT行业中,这通常涉及到数据分析、算法开发、用户界面设计以及隐私保护...

    awsome-ios-interview-question-testCode:研究iOS应用程序生命周期

    "awsome-ios-interview-question-testCode"这个项目显然聚焦于iOS应用程序的生命周期,特别是从面试的角度来探讨这一核心概念。让我们深入研究一下iOS应用生命周期中的关键知识点,并通过实践代码来加深理解。 首先...

    每个人都试图在其iOS应用程序生命周期的某个时刻实现缓存,这就是我们的事。-Swift开发

    每个人都试图在其应用程序生命周期的某个时刻实现缓存,这就是我们的事。 这是一个库,允许人们使用生存时间(TTL)值和语义来缓存NSData进行磁盘管理。 ? 每个人都试图在其应用程序生命周期的某个时刻实现缓存,这...

    马上着手开发 iOS 应用程序 (Start Developing iOS Apps Today)

    此外,本书还会涉及iOS应用的生命周期管理,包括应用的启动、挂起、恢复和终止状态。开发者需要了解如何保存和恢复应用的状态,以便在用户切换到其他应用或设备休眠后,仍能保持良好的用户体验。 在数据存储方面,...

    iOS_启动页

    这通常涉及到在应用程序的生命周期中,如`AppDelegate`的`application:didFinishLaunchingWithOptions:`方法中进行配置。 3. **兼容性**:确保启动页对iOS的不同版本以及横竖屏都有良好的支持。可以利用Auto Layout...

    Swift 4开发iOS应用

    - **ViewController生命周期**:了解ViewController的创建、显示、销毁过程及其对应的方法。 - **Model-View-Controller (MVC)**:设计模式,分离业务逻辑、数据模型和用户界面。 - **手势识别**:学习处理触摸...

Global site tag (gtag.js) - Google Analytics