ios - 在“FIRMessaging *”类型的对象上找不到属性“remoteMessageDelegate”
问题描述
我正在使用一些 Swift 和 FCM 代码,在更新 pod 后我遇到了两个错误。我已经进行了研究,但无法弄清楚如何解决它。
这是代码:
// For iOS 10 display notification (sent via APNS)
[UNUserNotificationCenter currentNotificationCenter].delegate = self;
// For iOS 10 data message (sent via FCM)
[FIRMessaging messaging].remoteMessageDelegate = self;
- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
[[FIRInstanceID instanceID] setAPNSToken:deviceToken type:FIRInstanceIDAPNSTokenTypeProd]; error message———> No visible @interface for 'FIRInstanceID' declares the selector 'setAPNSToken:type:'<--error message ends
NSLog(@"deviceToken1 = %@; %@",deviceToken,[[FIRInstanceID instanceID] token]);
}
这是错误消息:
在“FIRMessaging *”类型的对象上找不到属性“remoteMessageDelegate”
解决方案
在 5.0.0 版中,他们将其删除remoteMessageDelegate
并替换为delegate
:
https ://firebase.google.com/support/release-notes/ios#5.0.0
它delegate
现在也在当前的FIRMessaging
API 文档中:
https ://firebase.google.com/docs/reference/ios/firebasemessaging/api/reference/Classes/FIRMessaging#/c:objc(cs)FIRMessaging(py)delegate
委托处理 FCM 令牌刷新,以及通过 FCM 直接通道接收的远程数据消息。
@property (readwrite, nonatomic, nullable) id<FIRMessagingDelegate>
delegate;
您可以参考他们的 quickstart-ios 代码以了解示例用法:
https ://github.com/firebase/quickstart-ios/blob/master/messaging/MessagingExample/AppDelegate.m#L36
// [START set_messaging_delegate]
[FIRMessaging messaging].delegate = self;
// [END set_messaging_delegate]
推荐阅读
- python - 使用 python 子进程 Popen 触摸文件
- react-native - How to change the TouchableOpacity image on press
- html - 为什么我的 img 仅在 Apple 设备上延伸很大
- excel - 将时间组分配给excel中的时间范围
- html - 如何将图像设置为网站菜单中的另一个链接
- python - 使用 pd.read_stata() 将 stata .dta 文件作为 python pandas 数据框读取
- node.js - 无法添加角色,Discord.js
- vue.js - 如何在 Nuxt JS 中使用 WebPushr
- google-cloud-platform - 为什么 google cloud build 对于这两个命令的运行方式不同?
- javascript - Vue没有在打开的窗口中导航到新标签