ALC ( App Life Cycle )
앱 생명주기는 앱의 시작과 끝 사이에 실행되는 여러가지 상태를 정의한것이다.
다양한 앱의 상황에서 대응해야 하기 때문에 반드시 이해하고 넘어가야 될 부분이다.
앱의 상태 구분
1. Not Running -> 실행 하고 있지 않은 상태
2. Inactive -> 실행 중인 상태지만 이벤트가 없는 상태
3. Active -> 실행 중이고 이벤트가 생긴상태
4. Background -> 백그라운드 상태에서 이벤트가 있는 상태
5. Suspended -> 백그라운드 상태에서 이벤트가 없는 상태
2번과 3번을 묶어 보통 Foreground 라고 칭한다.
앱의 상태에 대응되는 함수
각 5가지의 상태는
AppDelegate 에서 대응되는 함수가 정의되어 있어 상태에 따라 동작하는 코드를 작성하여 상태에 따른 동작을 수행할 수 있다.
func application (_: didFinishLaunchingWithOptions) {}
앱이 처음 시작될때 실행되는 함수
func applicationWillResignActive (_: application) {}
앱이 Active 상태에서 Inactive 상태로 진입 할때 실행되는 함수
func applicationDidEnterBackground (_: application) {}
앱이 Background 상태로 진입 할때 실행되는 함수
func applicationWillEnterForeground (_: application) {}
앱이 Background 상태에서 Foreground 상태로 진입 할때 실행되는 함수
func applicationDidBecomeActive (_: application) {}
앱이 Active 상태로 진입 할때 실행되는 함수
func applicationWillTerminate (_: application) {}
앱이 종료 될때 실행되는 함수
필수로 전부 구현해야되는 함수는 아니지만 상황에 따른 적절한 구현으로 깔끔하고 자연스러운 동작의 앱을 만들수 있다.
'Swift' 카테고리의 다른 글
[Swift] typealias (1) | 2018.05.28 |
---|---|
[Swift] VLC ( View Life Cycle ) (0) | 2017.11.09 |
[Swift] Thread (0) | 2017.11.07 |
[Swift] GCD (Grand Central Dispatch) (1) | 2017.11.07 |
[Swift] Email, Password Validation extension (이메일, 비밀번호 검증) (0) | 2017.05.25 |