[iOS] AppDelegate - Session LifeCycle

Youngwoo Lee·2021년 5월 9일
0

iOS

목록 보기
14/46
post-thumbnail

Session Life-Cycle

iOS13버전 이후, AppDelegate의 역할은 SceneDelegate로 몇 가지 이전되면서, AppDelegateSession LifeCycle에 대한 역할이 추가되었다

Scene Session이 생성되거나 삭제될 때 AppDelegate에 알리는 두 메소드가 추가됐는데,

Scene Session은 앱에서 생성한 모든 scene의 정보를 관리한다

UISceneSession 객체는 scene의 공유의 런타임 인스턴스를 관리합니다. 사용자가 앱에 새로운 scene을 추가하거나 프로그래밍적으로 scene을 요청하면, 시스템은 그 scene을 추적하는 session객체를 생성합니다. 그 session에는 고유한 식별자와 scene구성 세부사항(configuration details)가 들어있습니다. UIKit는 session 정보를 그 scene 자체의 생애(life time)동안 유지하고 app switcher에서 사용자가 그 scene을 클로징하는 것에 대응하여 그 session을 파괴합니다.

session 객체는 직접 생성하지 않고 UIKit가 앱의 사용자 인터페이스에 대응하여 생성합니다. 또한 AppDelegate에서 사용하는 두 메서드를 통해서 UIKit에 새로운 scene과 session을 프로그래밍적 방식으로 생성할 수 있습니다

(UISceneSession - Apple Developer Document 참고)

application (_ : configurationForConnecting : options :)
//scene을 만들 때 구성 객체를 반환해야 합니다.

application (_ : didDiscardSceneSessions :)
//사용자가  app switcher를 통해 scene을 닫을 때 호출됩니다.
profile
iOS Developer Student

0개의 댓글