^http://penguin-story.tistory.com/32^

http://penguin-story.tistory.com/32 [iOS - 앱 생명주기, ViewController 생명주기

안녕하세요. 오늘은 iOS의 생명주기에 대해 알아보는 시간을 가지도록 하겠습니다. iOS 앱을 실행하면 사용자가 iOS 앱을 실행하면 다음과 같은 일이 발생합니다. UIApplication 객체 생성 AppDelegate 객체 생성..

penguin-story.tistory.com](http://penguin-story.tistory.com/32)

앱 생명주기 동안 중요한 이벤트에 대한 응답으로 Singleton UIApplication 객체가 호출되는 메서드의 집합

선언

protocol UIApplicationDelegate

  • 인스턴스메서드

application(_:didFinishLaunchingWithOptions:)

애플리케이션이 시작된 후 호출되는 메서드

선언

optional func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool

앱이 실행되어 초기 작업을 한 직후에 실행된다.

  • 인스턴스메서드

applicationWillResignActive(_:)

inactive 상태로 전환될 때 호출되는 메서드

foreground 상태를 떠날 때 호출됨

선언

optional func applicationWillResignActive(_ application: UIApplication)

앱이 비활성 단계를 들어가기 직전에 실행된다.

  • 인스턴스메서드

applicationWillEnterForeground(_:)

아직 foreground에서 실행중은 아니지만 앱이 background에서 foreground로 전환될 때 호출되는 메서드

선언

optional func applicationWillEnterForeground(_ application: UIApplication)

앱이 백그라운드에서 전면으로 다시 나오기 직전에 실행된다.

  • 인스턴스메서드

applicationDidEnterBackground(_:)

앱이 background 상태일 때 호출되는 메서드

선언

optional func applicationDidEnterBackground(_ application: UIApplication)

앱이 백그라운드 상태에 진입했을 때 실행된다. 데이터가 유실되지 않도록 저장 작업이 필요할 수 있다.

  • 인스턴스메서드

applicationDidBecomeActive(_:)

앱이 active상태가 되어 실행중일 때 호출되는 메서드

선언

optional func applicationDidBecomeActive(_ application: UIApplication)

앱이 백그라운드에서 전면으로 다시 나온 직후에 실행된다.

  • 인스턴스메서드

applicationWillTerminate(_:)

앱이 종료될 때 호출되는 메서드

선언

optional func applicationWillTerminate(_ application: UIApplication)

앱 종료 직전에 실행된다.