본문 바로가기

카테고리 없음

[Swift] "Cannot find type 'MessagingRemoteMessage' in scope" 오류 해결방법

반응형
반응형

최신 Firebase/Messaging 라이브러리를 설치하면 작성한지 오래된 코드에서 위 제목과 같은 오류가 발생합니다. 최신 라이브러리에서 변경된 부분이 있기 때문인데요.

 

다음은 fcm 관련 작성한지 오래된 코드입니다.

 

 

extension AppDelegate: MessagingDelegate {    

func messaging(_ messaging: Messaging, didReceiveRegistrationToken fcmToken: String) {        Logger.info(message: "Firebase registration token: \(fcmToken)")        // fcmkey를 서버로 전송하기 위해서 UserDefaults 저장 
UserDefaults.standard.set(fcmToken, forKey: UserDefaultsKey.fcmToken.toString)    }

func messaging(_ messaging: Messaging, didReceive remoteMessage: MessagingRemoteMessage) {        Logger.info(message: "Received data message: \(remoteMessage.appData)")        Messaging.messaging().shouldEstablishDirectChannel = true    }}

 

이 코드를 실행하면 세 가지 오류가 발생합니다. 먼저 fcmToken: String에서 String을 String?으로 변경해야합니다.

 

그리고 func messaging(_ messaging: Messaging, didReceive remoteMessage: MessagingRemoteMessage) { 메소드는 전부 주석처리하거나 삭제하면 될 것 같습니다.

 

swift로 fcm 구현은 다음 링크를 참조하세요

firebase.google.com/docs/cloud-messaging/ios/client?hl=ko

반응형