AppDelegate VS SceneDelegate
ย AppDelegate
๊ธฐ๋ณธ ๋ฉ์๋
1.
func application(_:didFinishLaunchingWithOptions:) โ Bool
โข
์ด ๋ฉ์๋๋ ์ฑ์ด ์์๋๊ณ ์ฑ์ ์ค์ ์ด ์๋ฃ๋๋ฉด ํธ์ถ๋๋ค.
โข
iOS 13 ์ด์ ๋ฒ์ ์ ์ฑ์์๋ UIWindow ๊ฐ์ฒด ๊ตฌ์ฑ๊ณผ ๋ทฐ ์ปจํธ๋กค๋ฌ ์ธ์คํด์ค๋ฅผ UIWindow ๊ฐ์ฒด์ ํ ๋นํ์ฌ ํ๋ฉด์ ํ์ํ ์ ์์๋ค.
โข
iOS 13 ๋ฒ์ ๋ถํฐ๋ ์ฑ์ scene์ด ์๋ ๊ฒฝ์ฐ, app delegate๋ ์ด๋ฌํ ์ฒ๋ฆฌ๋ฅผ ํ ์ฑ
์์ด ์๊ณ scene delegate์๊ฒ ์ฑ
์์ด ์๋ค.
2.
func application(_:configurationForConnecting:options:) โ UISceneConfiguration
โข
์ด ๋ฉ์๋๋ ์ฑ์ ํ์ํ ์๋ก์ด scene์ด๋ window๊ฐ ํ์ํ ๋๋ง๋ค ํธ์ถ๋๋ค.
โข
์ด ๋ฉ์๋๋ ์ฑ ์์์ ํธ์ถ๋์ง ์๊ณ , ์๋ก์ด scene์ด๋ ์๋ก์ด window๋ฅผ ๊ฐ์ ธ์์ผ ํ๋ ๊ฒฝ์ฐ์๋ง ํธ์ถ๋๋ค.
3.
func application(_:didDiscardSceneSessions:)
โข
์ด ๋ฉ์๋๋ scene์ ์ญ์ ํ ๋ ๋๋ ํ๋ก๊ทธ๋๋ฐ ๋ฐฉ์์ผ๋ก ์ญ์ ๋ ๋ ํธ์ถ๋๋ค.
โข
์ด ๋ฉ์๋๋ ์ฌ์ฉ์๊ฐ scene์ ์ญ์ ํ ๋ ์ฑ์ด ์คํ๋์ง ์๋ ๊ฒฝ์ฐ didFinishLaunchingWithOptions:) ๋ฉ์๋๊ฐ ํธ์ถ๋ ์งํ ๋ชจ๋ ์ญ์ ๋ scene์ ๋ํด ํธ์ถ๋๋ค.
ย SceneDelegate
โข
iOS 13 ๋ฒ์ ๋ถํฐ๋ SceneDelegate๊ฐ AppDelegate๋ก๋ถํฐ UIWindow์ ๊ด๋ จ๋ ๋ถ๋ถ์ ๋ด๋นํ๋ค.
โข
์ฑ์๋ ๋ ์ด์์ scene์ด ์์ ์ ์์ผ๋ฉฐ, ์ด์ scene์ ์ฑ์ ์ฌ์ฉ์ ์ธํฐํ์ด์ค ๋ฐ ์ปจํ
์ธ ์ ๋ฐฐ๊ฒฝ์ผ๋ก ์ฌ์ฉ๋๋ค.
โข
๋ฐ๋ผ์ SceneDelegate๋ UI ๋ฐ ๋ฐ์ดํฐ๋ฅผ ํ๋ฉด์ ํ์ํ๋ ๊ฒ์ ๋ด๋นํ๋ค.
โข
SceneDelegate๋ UISceneSession์ scene ์์ฑ, ํ๊ดด ๋ฐ ์ํ ๋ณต์๊ณผ ๊ฐ์ scene ๋ผ์ดํ ์ฌ์ดํด ์ด๋ฒคํธ๋ฅผ ๋ด๋นํ๋ค.
๊ธฐ๋ณธ ๋ฉ์๋
1.
scene(_:willConnectTo:options:)
โข
UISceneSession์ ๋ผ์ดํ ์ฌ์ดํด์์ ํธ์ถ๋๋ ์ฒซ ๋ฒ์งธ ๋ฉ์๋์ด๋ฉฐ, ์ด ๋ฉ์๋๋ scene์ด ์ฑ์ ์ถ๊ฐ๋ ๋ ํธ์ถ๋๋ค.
2.
sceneDidDisconnect(_:)
โข
scene์ด ๋ฐฑ๊ทธ๋ผ์ด๋ ์ํ๋ก ์ ํ๋ ๋, iOS๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ์ํ๊ธฐ ์ํด scene์ ์ญ์ ํ ์ ์๋ค.
โข
์ด ๋ง์ ์ฑ์ด ์ข
๋ฃ๋๊ฑฐ๋ ์คํ๋์ง ์๋ ๊ฒ์ ๋งํ๋ ๊ฒ์ด ์๋๋ผ, scene๋ง session์์ ์ฐ๊ฒฐ ํด์ ๋๊ณ ๋นํ์ฑํ๋๋ ๊ฒ์ด๋ค.
3.
sceneDidBecomeActive(_:)
โข
์ด ๋ฉ์๋๋ sceneWillEnterForeground ๋ฉ์๋ ๋ฐ๋ก ๋ค์์ ํธ์ถ๋๋ฉฐ, scene์ด ํ๋ฉด์ ํ์๋๋๋ก ์ค๋นํ ๋ ์ฌ์ฉํ๋ค.
4.
sceneWillEnterForeground
โข
์ด ๋ฉ์๋๋ ์ฑ์ด ์ฒ์ ์คํ๋ ๋๋ Background ์ํ์์ Foreground ์ํ๋ก ์ ํ๋ ๋์ฒ๋ผ scene์ด ์์๋๋ ค๊ณ ํ ๋ ํธ์ถ๋๋ค.
5.
sceneWillResignActive(_:)
โข
์ด ๋ฉ์๋๋ ์ฌ์ฉ์๊ฐ scene๊ณผ์ ์ํธ์์ฉ์ ์ค์งํ ๋ ํธ์ถ๋๋ค.
6.
sceneDidEnterBackground(_:)
โข
์ด ๋ฉ์๋๋ scene์ด ํ๋ฉด์ ํ์๋์ง ์๊ณ , ๋ฐฑ๊ทธ๋ผ์ด๋๋ก ์ง์
ํ ๋ ํธ์ถ๋๋ค.