更新Pod库后,在appdelegate.m中出现上述错误
- (void)application:(UIApplication*)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken {
[[FIRInstanceID instanceID] setAPNSToken:deviceToken type:FIRInstanceIDAPNSTokenTypeSandbox];
NSString *newToken = [deviceToken description];
newToken = [newToken stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"<>"]];
newToken = [newToken stringByReplacingOccurrencesOfString:@" " withString:@""];
NSLog(@"My token is: %@", newToken);
}
答案 0 :(得分:4)
这是不推荐使用的代码,您应该尝试使用FIRMessaging
您可以将代码更新为如下形式
// With "FirebaseAppDelegateProxyEnabled": NO
- (void)application:(UIApplication *)application
didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
[FIRMessaging messaging].APNSToken = deviceToken;
}
有关更多详细信息,请参见here。
答案 1 :(得分:0)
替代解决方案: 最新的Firebase版本(v6)可能存在问题。在Podfile中更改Firebase版本。 将以下行添加到Podfile
pod 'Firebase/Core', '~>5.20.2'
然后运行pod update
这可以帮助我解决问题
答案 2 :(得分:0)
您的firebase_messaging
中可能有旧版本的pubspec.yaml
。确保您拥有latest version。如果这样做没有帮助,请转到ios文件夹(cd ios/
),然后依次运行pod update
和flutter clean
。然后,再次运行您的应用程序。