iOS 13이 나오면서 SceneDelegate가 나왔습니다. 그전에는 AppDelegate를 사용했는데 어떤 점이 달라졌는지 알아보겠습니다. 자료를 찾다보면 SceneDelegate를 삭제하고 AppDelegate만 사용하시는 분들이 있는데, iOS13 이상 지원하는 앱이라면 SceneDelegate를 사용하는게 애플의 방향성과 일치하지 않을까 라는 생각을 합니다. iOS 12 이하에서 App Delegate 살펴보기 App Delegate는 두가지 중요한 역할을 합니다. 첫 번째는 시스템의 프로세스 수준의 이벤트를 알리는 것입니다. 앱이 실행되거나 꺼지거나 할 때 시스템은 App Delegate로 알립니다. 두 번째는 UI의 상태를 알려주는 것입니다. Entered Foreground 처럼 UI상태를..
Managing Your App's Life Cycle 앱이 포그라운드나 백그라운드에 있을 때 시스템 알림에 응답하고 다른 중요한 시스템 관련 이벤트를 처리합니다. Overview 앱의 현재상태는 무엇을 할 수 있는 지 없는 지를 결정합니다. 예를 들어, 포그라운드에 있는 앱은 유저가 주의하고 있어서 CPU같은 시스템 자원의 우선도가 높습니다. 반면에, 백그래운드의 앱은 가능한 적은 일을 해야하고 화면에 보여지지 않으므로 아마 아무 일도 안할 수도 있습니다. 앱이 상태를 바꿈에 따라서 그 동작을 그에 맞게 조정해야합니다. iOS 13 이상에서는 UISceneDelegate를 사용해서 scene기반의 앱 라이프사이클 이벤트를 처리합니다. iOS 12 이하에서는 UIApplicationDelegate를 사용..