앱 생명주기(App's life cycle)
- 앱 생명주기(App's Life Cycle)란? 앱의 실행부터 종료까지의 주기를 말하며, 앱이 foreground나 background에 있을 때 시스템 알림에 응답하고 기타 중요한 시스템 관련 이벤트를 처리하는 단계들을 말한다.
앱의 상태 변화
- iOS에서 앱은 3가지의 실행 모드와 5가지의 상태가 있고 항상 하나의 상태를 지니고 있다.
Not Running
- 실행되지 않았거나, 앱 실행이 종료된 상태
Foreground
- Inactive: 실행 중이지만, 이벤트를 받고 있지 않는 상태. 예를 들어, 앱 실행 중에 알람이 화면을 덮어서 앱이 실질적으로 이벤트를 받고 있지 못하는 상태를 말한다.
- Active: 앱이 실질적으로 작동하고 있는 상태
Background
- Running: 백그라운드에서 동작하고 있는 상태. 예를 들어, 백그라운드에서 음악을 실행하고 있는 상태를 말한다.
- Suspended: 백그라운드 상태에서 작동을 멈춘 상태. 빠른 재실행을 위해서 메모리에 적재되어 있는 상태이지만 실질적으로 동작하고 있지는 않다. 메모리가 부족할 때 비로소 시스템이 강제 종료하게 된다.
Not Running >> Active
-
앱을 터치해서 앱이 실행된 상태
Active >> Inactive >> Running
- 앱을 활성화 상태에서 비활성화 상태로 만든 뒤, 백그라운드에서도 계속 실행 중인 상태
Active >> Inactive >> Suspended
- 앱을 활성화 상태에서 비활성화 상태로 만든 뒤, 백그라운드에서도 동작하고 있지 않는 상태
Running >> Active
- 백그라운드에서 실행 중인 앱이 다시 포어 그라운드에서 활성화되는 상태
'Study > iOS' 카테고리의 다른 글
[iOS] Core Animation (0) | 2022.07.18 |
---|---|
[iOS] CALayer (0) | 2022.07.14 |
[iOS] UITextView에 링크 거는 법 (0) | 2021.03.22 |
[iOS] UITextView와 UITextField의 차이 정리 (2) | 2021.03.17 |
[iOS] 뷰 생명주기(View life cycle)에 대해서 알아보자 (1) | 2021.03.07 |