[swift] Swift FirebaseUI를 사용하여 푸시 알림 구현하기

FirebaseUI는 Firebase를 사용하여 애플리케이션을 개발할 때 편리하게 사용할 수 있는 라이브러리입니다. FirebaseUI를 사용하여 푸시 알림을 구현하는 방법을 알아보겠습니다.

Firebase 프로젝트 설정

먼저 Firebase 프로젝트를 설정해야합니다. Firebase 콘솔에 접속하여 새로운 프로젝트를 생성하고, iOS 앱을 추가해야합니다. Firebase 설정 파일을 다운로드하여 프로젝트에 추가하세요.

FirebaseUI 설치

FirebaseUI는 CocoaPods를 통해 설치할 수 있습니다. Podfile에 다음과 같이 추가하세요:

pod 'FirebaseUI'

터미널에서 pod install 명령을 실행하여 FirebaseUI를 설치하세요.

푸시 알림 구현

FirebaseUI를 사용하여 푸시 알림을 구현하기 위해서는 다음 단계를 따라야합니다:

  1. Firebase Cloud Messaging(FCM) 설정
  2. 알림 권한 요청
  3. 푸시 알림 수신

Firebase Cloud Messaging(FCM) 설정

Firebase 콘솔에서 앱의 설정 페이지로 이동하여 클라우드 메시징 탭을 클릭하세요. FCM 서버 키와 클라이언트 키(푸시 알림의 발송자 ID)를 확인하세요.

알림 권한 요청

앱이 백그라운드 또는 종료 상태에서 푸시 알림을 수신하려면 iOS 알림 권한을 요청해야합니다. AppDelegate 파일에 다음 코드를 추가하세요:

import Firebase
import UserNotifications

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate, UNUserNotificationCenterDelegate {

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        FirebaseApp.configure()
        
        UNUserNotificationCenter.current().delegate = self
        UNUserNotificationCenter.current().requestAuthorization(options: [.alert, .sound, .badge]) { (granted, error) in
            if granted {
                DispatchQueue.main.async {
                    application.registerForRemoteNotifications()
                }
            }
        }
        
        return true
    }
}

푸시 알림 수신

푸시 알림을 수신하려면 AppDelegate에서 didReceiveRemoteNotification 메서드를 구현해야합니다. 다음은 예시 코드입니다:

import FirebaseMessaging

extension AppDelegate: MessagingDelegate {
    func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any]) {
        if let messageID = userInfo["gcm.message_id"] as? String {
            print("Message ID: \(messageID)")
        }

        print(userInfo)
    }
}

위의 코드에서 print 문을 원하는 동작으로 변경할 수 있습니다.

결론

FirebaseUI를 사용하여 Swift에서 푸시 알림을 구현하는 방법에 대해 알아보았습니다. Firebase 프로젝트를 설정하고 CocoaPods를 통해 FirebaseUI를 설치한 후, 푸시 알림 권한을 요청하고 푸시 알림을 수신하는 코드를 추가해보세요. FirebaseUI는 강력한 도구로, 애플리케이션의 사용자 경험을 향상시키기 위해 다양한 기능을 제공합니다.

참고 자료