issue 23 :iOS 系统架构

发表于 2018-09-09   |   分类于 Objectiv-C 课程

笔记部分

  1. iOS 可以分为 核心操作系统层(Core OS layer)、核心服务层(Core Services layer)、媒体层(Media layer)和可触摸层(Cocoa Touch layer)。

    1. Core OS是位于iOS系统架构最下面的一层是核心操作系统层,它包括内存管理、文件系统、电源管理以及一些其他的操作系统任务。它可以直接和硬件设备进行交互。作为app开发者不需要与这一层打交道。
    2. Core Services是核心服务层,可以通过它来访问iOS的一些服务。
    3. Media是媒体层,通过它我们可以在应用程序中使用各种媒体文件,进行音频与视频的录制,图形的绘制,以及制作基础的动画效果。
    4. Cocoa Touch是可触摸层,这一层为我们的应用程序开发提供了各种有用的框架,并且大部分与用户界面有关,本质上来说它负责用户在iOS设备上的触摸交互操作。
  2. iOS 生命周期:在 main.m 中指明,进入到 AppDelagate 文件。图片描述
  3. application didFinishLaunchingWithOptions:当应用程序启动时执行,应用程序启动入口,只在应用程序启动时执行一次。若用户直接启动,lauchOptions内无数据,若通过其他方式启动应用,lauchOptions包含对应方式的内容。
  4. applicationWillResignActive:在应用程序将要由活动状态切换到非活动状态时候,要执行的委托调用,如 按下 home 按钮,返回主屏幕,或全屏之间切换应用程序等。
  5. applicationDidEnterBackground:在应用程序已进入后台程序时,要执行的委托调用。
  6. applicationWillEnterForeground:在应用程序将要进入前台时(被激活),要执行的委托调用,刚好与applicationWillResignActive 方法相对应。
  7. applicationDidBecomeActive:在应用程序已被激活后,要执行的委托调用,刚好与applicationDidEnterBackground 方法相对应。
  8. applicationWillTerminate:在应用程序要完全推出的时候,要执行的委托调用,这个需要要设置UIApplicationExitsOnSuspend的键值。
  9. 调用顺序

    1. 初次启动:iOS_didFinishLaunchingWithOptions—>iOS_didFinishLaunchingWithOptions
    2. 按下home键:iOS_applicationWillResignActive—>iOS_applicationDidEnterBackground
    3. 点击程序图标进入:iOS_applicationWillEnterForeground—>iOS_applicationDidBecomeActive

思考

  1. 生命周期的理解有利于进行应用的开发。默认只用第一个,后续可能随着应用的复杂,会用更多。

源文件

  • UI基础控件(2018-07-27).key

发表新评论

© 2019 Powered by Typecho & Theme 豫ICP备15027577号