-
[iOS] Firebase ์ฌ์ฉ ์, Remote Notification์ด ์ ์์ ์ผ๋ก ๋ค์ด์์ ๋ ํธ์ถ๋๋ ์ง์ ๋ค๊ณผ ์๋ฌธ์ ๊ฐ๋ฐ ์ฝ์ง๊ธฐ/iOS 2020. 2. 20. 21:00
aps๋ฅผ ์ฌ์ฉํ์ง ์๊ณ , ์ง์ ๋ ธํฐํผ์ผ์ด์ ์ ๋์ธ์ง ๋ง์ง ์ฑ์์ ํ ๋ฒ ๋ ์ฒดํฌํด์ผ ํ ์ผ ์ด ์๊ฒผ๋ค. (๋๋ฆ์ silent push. ์ฌ์ค aps์์ alert ์์ฑ์ ์ ์ธํด ๋ ธํฐํผ์ผ์ด์ ์ ๋จ์ง ๋ชปํ๊ฒ ํ๋ ๋ฐฉ๋ฒ๋ ์๊ธด ํ๋ค)
๋๋ฌธ์, Firebase๋ฅผ ์ฌ์ฉํ ๋, ํธ์๊ฐ ๋ค์ด์ค๋ ์์ ๊ณผ, ๊ทธ ์์ ์์ ํธ์๋ก ๋ค์ด์จ ๋ฐ์ดํฐ๋ฅผ ํ์ธํ๊ธฐ ์ํด ํธ์ถ๋๋ ์ง์ ์ ํ์ธํ๋ค.
FireBase SDK๋ฅผ ์ฌ์ฉํด์ ํธ์๋ฅผ ์ฒ๋ฆฌํ๋ฉด, ์ด 3 ๊ฐ์ง ๊ฒฝ๋ก๋ก ํธ์๊ฐ ๋ค์ด์จ๋ค.
1. Firebase ์ messageDelegate
์ด์ํ๊ฒ ์๋ ์์ฃผ ํธ์ถ์ด ์๋๋ค... :( ์ด๋ค ๊ฒฝ์ฐ์ ํธ์ถ๋๋์ง ๋ค์ ์์๋ด์ผ๊ฒ ๋ค.
์ค ๊ธฐ๊ธฐ์์๋ ์ ๋๊ณ ์๋ฎฌ๋ ์ดํฐ์์๋ง ํธ์ถ๋์๋ค.
func messaging(_ messaging: Messaging, didReceive remoteMessage: MessagingRemoteMessage)
2. ์ ํ์ ํ๋ ์ ์ํฌ UserNotifications์์ remote Notification์ ์์ ํ์ ์ ํธ์ถ๋๋ function
๊ฐ์ฅ ๋ง์ด ํธ์ถ๋๋ค.
func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable: Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void)
3. iOS 10 ์์๋ง ํธ์ถ๋๋ค๋ function. ํ๋ ์ผ์์๋ iOS 13 ์ด์์ ํ๊น์ผ๋ก ์ผ๊ธฐ ๋๋ฌธ์ ๋ณผ ์ผ ์ ์๊ฒ ์ง๋ง ์ ๋ฆฌํด ๋์๋ค.
func userNotificationCenter(_ center: UNUserNotificationCenter, willPresent notification: UNNotification,
withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void)์์ ์ธ ๊ตฐ๋ฐ์์, remote Notification ๋ฐ์ดํฐ๋ฅผ ๋ฐ์ ์ฒ๋ฆฌ ํ ์ ์์๋ค. ์์ง๋ ์ didReceive remoteMessage๊ฐ ์ ํธ์ถ๋์ง ์๋์ง๋ ๋ชจ๋ฅด๊ฒ ๋ค.. ์ค์ ๋ฌธ์ ์ผ๊น? ์กฐ๊ธ ๋ ํ๋ด์ผ๊ฒ ๋ค...
'๊ฐ๋ฐ ์ฝ์ง๊ธฐ > iOS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[iOS] ํ์ฌ ์ค๋ ๋๊ฐ main thread ์ธ์ง ์์๋ด๊ธฐ (0) 2020.02.28 [iOS]BackgroundTasks ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ ๋, task ์คํ, ์ค๋จ ํ ์คํธํ๊ธฐ. (0) 2020.02.24 [iOS] present๋ viewcontroller์์ status bar๊ฐ ์๊น๋งฃ๊ฒ ๋ณด์ผ ๋ (0) 2020.02.17 [iOS]CALayer Shadow๊ฐ ์ ๋ณด์ผ ๋ ํ์ธํด๋ณผ ๊ฒ (0) 2020.02.12 [iOS] ํ๋์จ์ด ๋ชจ๋ธ๋ช ์ป์ด์ค๊ธฐ (0) 2020.02.12