[iOS][Swift] App LifeCycle - 앱 생명주기

Jay·2023년 8월 22일
0

iOS

목록 보기
23/47

앱의 생명주기는 사용자와의 상호작용, 시스템 이벤트 및 앱의 내부 상태 변화에 따라 앱이 경험하는 다양한 상태를 나타냅니다. 이 글에서는 iOS 앱의 주요 라이프사이클 상태와 관련 UIApplicationDelegate 메서드에 대해 살펴보겠습니다.

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

  • 상태 설명: 앱이 시작되지 않았거나, 이전에 실행되었던 앱이 종료된 상태.
  • 관련 메서드:
application(_:willFinishLaunchingWithOptions:)
application(_:didFinishLaunchingWithOptions:)

2. Inactive (비활성)

  • 상태 설명:
    앱이 전경에 있지만 이벤트를 받지 못하는 상태. 전화나 메시지 알림과 같은
    이벤트로 인해 잠시 이 상태가 될 수 있습니다.
  • 관련 메서드:
applicationWillResignActive(_:)

3. Active (활성)

  • 상태 설명: 앱이 전경에 있고 사용자와 상호작용하고 있는 상태.
  • 관련 메서드:
applicationDidBecomeActive(_:)

4. Background (백그라운드)

  • 상태 설명: 앱이 백그라운드에서 코드를 실행하는 상태. 데이터 저장, 네트워크 작업 등이 가능합니다.
  • 관련 메서드:
applicationDidEnterBackground(_:)

5. Suspended (일시 중지)

  • 상태 설명: 앱이 백그라운드에 있지만 코드 실행이 없는 상태. 시스템은 필요에 따라 이 상태의 앱을 종료시킬 수 있습니다.
  • 관련 메서드: 호출되는 메서드 없음.

6. Termination (종료)

  • 상태 설명: 앱이 종료되는 상태.
  • 관련 메서드:
applicationWillTerminate(_:)

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

profile
Junior Developer

0개의 댓글