Apple-CS-interview / iOS-CS-interview

7 stars 1 forks source link

App의 Not running, Inactive, Active, Background, Suspended에 대해 설명하시오. #50

Open vichye-1 opened 8 months ago

vichye-1 commented 8 months ago

~ iOS 12 : App-Based

App States in iOS

1. Not running

참고

Hminchae commented 8 months ago

App LifeCycle - 앱 생명주기

image

앱이 background에 있는가, foreground에 있는가에 따라서 시스템 알림에 응답하고 다른 중요한 시스템 관련된 이벤트를 처리하게 됨. 현재 app의 state(상태) 는 어떠한 것을 할 수 있고 없는지를 결정하게 됨.

예를 들어 foreground 앱은 user가 사용하고 있기 때문에 user의 관심을 받게되고 따라서 CPU를 포함한 system resource에서 우선순위를 가지게 됨 반면에 background 앱은 화면의 밖의 일이기 때문에 가능한 작업을 수행하지 않는 것이 좋음. 따라서 우리의 앱은 상태가 바뀔 때 마다 이에 대응해서 동작을 조정해야함

1. Not Running (실행되지 않음)

2. Inactive (비활성)

3. Active (활성)

4. Background (백그라운드)

5. Suspended (일시 중지)

6. Termination (종료)

각 상태변화에 따른 UIApplicationDelegate 메서드를 통해 앱의 행동을 적절하게 조절하면 더 나은 사용자 경험과 효율적인 리소스 관리가 가능함

ronick-grammer commented 7 months ago

App의 Not running, Inactive, Active, Background, Suspended에 대해 설명하시오.

📝 참고 사이트