앱의 상태변화

DEVJUN·2022년 7월 12일
0

iOS 면접 준비

목록 보기
1/6
post-thumbnail

앱의 상태 변화는 운영체제가 처리하는 영역이다. 아이폰의 운영체제인 iOS는 시스템에서 발생하는 특정 상황에 맞게 앱의 상태를 변화시키고 제어한다.

iOS에서 앱이 가질 수 있는 상태값은 다음과 같다.

Not Running : 앱이 시작되지 않았거나 실행되었지만 시스템에 의해 종료된 상태

Inactive : 앱이 전면에서 실행 중이지만, 아무런 이벤트를 받지 않고 있는 상태

Active : 앱이 전면에서 실행 중이며, 이벤트를 받고 있는 상태

Background : 앱이 백그라운드에 있지만 여전히 코드가 실행되고 있는 상태, 대부분의 앱은 Suspended 상태로 이행하는 도중에 일시적으로 이 상태에 진입하지만 파일 다운로드나 업로드, 연산 처리 등 여분의 실행 시간이 필요한 앱일 경우 특정 시간 동안 이 상태로 남아 있게 되는 경우도 있음

Suspended : 앱이 메모리에 유지되지만 실행되는 코드가 없는 상태, 메모리가 부족한 상황이 오면 iOS 시스템은 포그라운드에 있는 앱의 여유 메모리 공간을 확보하기 위해 Suspended 상태에 있는 앱들을 특별한 알림 없이 정리함

iOS 앱은 Not Running 상태에서 시작하여 Inactive, Active를 거친 다음, Suspended 상태를 마지막으로 다시 Not Running 상태로 돌아간다, 이를 앱의 라이프 사이클(Life Cycle, 생명 주기)라고 한다.

profile
🧑🏻‍💻iOS

0개의 댓글