About the App Launch Sequence

Panther·2021년 8월 13일
0

https://developer.apple.com/documentation/uikit/app_and_environment/responding_to_the_launch_of_your_app/about_the_app_launch_sequence

"Learn the order that your custom code executes at launch time."

launch 타임에 커스텀 코드가 실행되는 순서에 대해 알아봅니다.

Overview

앱을 launch 하는 것은 UIKit이 대부분 자동으로 처리하는 복잡한 단계의 연속에 관여합니다. launch 연쇄가 일어나는 동안 UIKit은 커스텀 작업을 수행할 수 있도록 앱 딜리게이트의 메소드들을 호출합니다. Figure 1은 앱이 초기화된 것으로 간주될 때까지 앱이 launch 된 시점으로부터 발생하는 단계의 연속을 보여주고 있습니다.

Figure 1 The app launch and initialization sequence

  1. 사용자에 의해 명시적으로 혹은 시스템에 의해 암묵적으로 앱이 launch 됩니다.
  2. Xcode 제공 메인 함수가 UIKitUIApplicationMaim(_:_:_:_:) 함수를 호출합니다.
  3. UIApplicationMain(_:_:_:_:) 함수가 UIApplication 객체를 및 앱 딜리게이트를 생성합니다.
  4. UIKit은 메인 스토리보드 혹은 nib 파일로부터 앱의 디폴트 인터페이스를 로드합니다.
  5. UIKit이 앱 딜리게이트의 application(_:willFinishLaunchingWithOptions:) 메소드를 호출합니다.
  6. UIKit이 앱 딜리게이트 및 뷰 컨트롤러의 추가적 메소드를 호출하는 상태 복구를 수행합니다.
  7. UIKit이 앱 딜리게이트의 application(_:didFinishLaunchingWithOptions:) 메소드를 호출합니다.

초기화가 완료되면 시스템은 씬 딜리게이트 혹은 앱 딜리게이트를 사용해서 UI를 표시하고 앱에 대한 생명주기를 관리합니다.

See Also


Launch Time

Performing One-Time Setup for Your App

앱 환경의 적합한 설정을 가능하게 합니다.

https://developer.apple.com/documentation/uikit/app_and_environment/responding_to_the_launch_of_your_app/performing_one-time_setup_for_your_app
https://velog.io/@panther222128/Performing-One-Time-Setup-for-Your-App

Preserving Your App's UI Across Launches

시스템 종료 후 앱을 이전 상태로 되돌립니다.

https://developer.apple.com/documentation/uikit/view_controllers/preserving_your_app_s_ui_across_launches
https://velog.io/@panther222128/Preserving-Your-Apps-UI-Across-Launches


0개의 댓글