석지한
한지석일지
석지한
전체 방문자
오늘
어제
  • 분류 전체보기 (33)
    • iOS & Swift (15)
    • 프로젝트 (13)
    • 알고리즘 (0)
    • 잡담 (4)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 시간표
  • Greedy
  • Realm
  • 알고리즘
  • pickerView
  • dp
  • 프로젝트
  • ios
  • 인터뷰
  • 동적프로그래밍
  • dfs
  • TableView
  • AppDelegate
  • 이분탐색
  • 공식문서
  • 그리디
  • Swift
  • Python
  • 개발일지
  • BFS

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
석지한

한지석일지

[iOS] AppDelegate란 ?
iOS & Swift

[iOS] AppDelegate란 ?

2022. 3. 24. 10:23
반응형

 오늘은 AppDelegate에 대해서 정리해보겠다. iOS 13 버전 이후에 SceneDelegate가 추가되어서 AppDelegate의 일부 역할은 SceneDelegate가 하게 되었고, AppDelegate는 Session Lifecycle에 대한 역할이 추가되었다. 또한 window -> scene으로 대체되었다.

 

(Scene : Scene에는 UI의 하나의 인스턴스를 나타내는 windows와 view controllers가 들어있다. 또한 각 scene에 해당하는 UIWindowSceneDelegate 객체를 가지고 있고, 이 객체는 UIKit와 앱 간의 상호작용을 조정하는 데 사용한다. Scene들은 가튼 메모리와 앱프로세스 공간을 공유하면서 서로 동시에 실행된다. 결과적으로 하나의 앱은 여러 scene과 scene delegate 객체를 동시에 활성화 할 수 있다.)

 

 

 

 

공식문서

앱의 공유 동작을 관리하는 메소드의 집합. AppDelegate의 처리 작업으로는

 

- 중앙 데이터 구조 초기화

- 앱 화면 configuring

- 메모리 부족 경고, 다운로드 완료 알림 등 앱의 외부에서 발생하는 알림에 대한 응답

- 앱을 대상으로, scenes, views, or view controllers과 관련이 없는 이벤트에 응답

- 앱의 푸시 알림 등 앱 출시 시 필요한 서비스 등록

 

이라고 정리해볼 수 있겠다.


쉽게 정리하기

 AppDelegate는 앱의 실질적인 root 객체, 시스템과의 상호작용 관리.

 

역할과 메소드

역할 

 

- application의 entry point

- session life-cycle 관리 

- 앱 상태변화 전반적 관리

 

메소드

func application(UIApplication, willFinishLaunchingWithOptions: [UIApplication.LaunchOptionsKey : Any]?) -> Bool

- 앱 실행 후 유저 화면에 보이기 직전에 호출됨.

func applicationDidBecomeActive(UIApplication)

- 앱이 Active 상태로 전환된 직후에 호출됨.

func applicationWillResignActive(UIApplication)

- 앱이 포커스를 잃을 경우 호출됨(ex : 홈버튼).

func applicationDidEnterBackground(UIApplication)

- 앱이 백그라운드로 진입할 때 호출됨.

func applicationWillEnterForeground(UIApplication)

- 앱이 포어그라운드로 진입할 때 호출됨.

 

느낀 점

 아직은 생소한 용어들이 많아 이해하기 어려운 점이 많았다. 다음에는 SceneDelegate에 대해서 알아봐야겠다는 것을 공부하며 느꼈다. 꼬리에 꼬리를 물며..... 열심히 공부하자 

 

 

참고 자료 

https://developer.apple.com/documentation/uikit/uiapplicationdelegate

https://velog.io/@yohanblessyou/AppDelegate%EC%9D%98-%EC%97%AD%ED%95%A0

https://sueaty.tistory.com/134

https://velog.io/@dev-lena/iOS-AppDelegate%EC%99%80-SceneDelegate

반응형

'iOS & Swift' 카테고리의 다른 글

[Swift] Swift 공식문서 정리 - 4(열거형)  (0) 2022.04.06
[Swift] Swift 공식문서 정리 - 3(클래스 & 구조체)  (0) 2022.04.04
[Swift] Swift 공식문서 정리 - 2(제어문, 함수)  (0) 2022.03.29
[Swift] Swift 공식문서 정리 - 1(기본연산자, 문자열, 콜렉션 타입)  (0) 2022.03.29
[iOS] Key-Chain이란?  (0) 2022.03.26
    'iOS & Swift' 카테고리의 다른 글
    • [Swift] Swift 공식문서 정리 - 3(클래스 & 구조체)
    • [Swift] Swift 공식문서 정리 - 2(제어문, 함수)
    • [Swift] Swift 공식문서 정리 - 1(기본연산자, 문자열, 콜렉션 타입)
    • [iOS] Key-Chain이란?
    석지한
    석지한
    iOS

    티스토리툴바