快速更新Firebase最新版本后出现错误“在范围内找不到“消息”
我最近通过 podfile将 Firebase 更新到最新的 Firebase 版本 7.3.1。现在我收到此错误并且 Xcode 因错误而失败:
Error 'Cannot find 'Messaging' in scope'
Cannot find type 'MessagingRemoteMessage' in scope
Xcode 版本:12.0
斯威夫特 5
我的代码是
extension AppDelegate : MessagingDelegate {
//MARK:- Firebase Delegate
func messaging(_ messaging: Messaging, didReceiveRegistrationToken fcmToken: String) {
print("Firebase registration token: (fcmToken)")
}
func messaging(_ messaging: Messaging, didReceive remoteMessage: MessagingRemoteMessage) {
print("Received data message: (remoteMessage.appData)")
}
}
我的豆荚如下所示以供参考
pod 'Firebase/Core'
pod 'Firebase/Messaging'
pod 'Firebase/DynamicLinks'
pod 'Firebase/Crashlytics'
我只是尝试使用完全移除豆荚
cocoapods-deintegrate cocoapods-clean
但没有运气!
我经常更新我的豆荚,我看不出是什么会导致这种重大变化。
有谁知道是什么原因?
回答
由于firebase的版本而出现,将其修复更改 MessagingRemoteMessage 为 MessagingDelegate错误将消失
以这种方式改变你的功能
func messaging(_ messaging: Messaging, didReceiveRegistrationToken fcmToken: String?) {
print("Firebase registration token: (fcmToken)")
}
func messaging(_ messaging: Messaging, didReceive remoteMessage: MessagingDelegate) {
print("Received data message: (remoteMessage.description)")
}
不要忘记 import FirebaseMessaging
回答
您需要在项目中明确导入“FirebaseMessaging”
import FirebaseMessaging