Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/54.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios “如何修复此错误消息”;请实施-消息传递:didReceiveRegistrationToken:将提供FCM令牌;_Ios_Ionic4_Xcode10_Ionic Native - Fatal编程技术网

Ios “如何修复此错误消息”;请实施-消息传递:didReceiveRegistrationToken:将提供FCM令牌;

Ios “如何修复此错误消息”;请实施-消息传递:didReceiveRegistrationToken:将提供FCM令牌;,ios,ionic4,xcode10,ionic-native,Ios,Ionic4,Xcode10,Ionic Native,我使用爱奥尼亚4和FCM来获取通知,在android上一切都很好,但在iOS上却不行。我在xcode控制台上看到了这条消息 “5.7.0-[Firebase/Messaging][I-FCM002023]对象未响应 -消息:didReceiveRegistrationToken:。请实现-消息:didReceiveRegistrationToken:将随FCM令牌一起提供” 该消息基本上意味着您的firmMessageDelegate应实现以下方法,以便能够通过Firebase接收fcmToke

我使用爱奥尼亚
4
FCM
来获取通知,在android上一切都很好,但在iOS上却不行。我在
xcode
控制台上看到了这条消息

“5.7.0-[Firebase/Messaging][I-FCM002023]对象未响应 -消息:didReceiveRegistrationToken:。请实现-消息:didReceiveRegistrationToken:将随FCM令牌一起提供”


该消息基本上意味着您的firmMessageDelegate应实现以下方法,以便能够通过Firebase接收fcmTokenfcmToken通常用作收件人标识,即您希望向谁发送邮件

- (void)messaging:(FIRMessaging *)messaging didReceiveRegistrationToken:(NSString *)fcmToken;
例如,您有一个FirebaseMessagingManager类,它与Firebase消息传递一起工作,然后您可以通过以下方式实现它:

#import <Foundation/Foundation.h>
#import <Firebase/Firebase.h>

@interface FirebaseMessagingManager : NSObject<MessagingDelegate>

- (void)messaging:(FIRMessaging *)messaging didReceiveRegistrationToken:(NSString *)fcmToken {
    NSLog(@"FCM registration token: %@", fcmToken);
}

@end 
#导入
#进口
@接口FirebaseMessagingManager:NSObject
-(void)消息传递:(firmMessageing*)消息传递didReceiverRegistrationToken:(NSString*)fcmToken{
NSLog(@“FCM注册令牌:%@”,fcmToken);
}
@结束

将此方法添加到appdelegate

func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) 
   // let deviceTokenString = deviceToken.reduce("", {$0 + String(format: "%02X", $1)})
    UserDefaults.standard.set(deviceToken, forKey: "devToken")
    UserDefaults.standard.set(deviceToken, forKey: "devTokenString")

在检查了关于这个问题的漏洞之后,我找到了IOS 12+的解决方案。 您只需在ios部分的config.xml中添加以下行:

<config-file parent="UIBackgroundModes" target="*-Info.plist">
<array>
    <string>remote-notification</string>
</array>


另外,不要忘记通过调用
Firebase.grantPermission()请求通知权限

如果您需要更多详细信息,请告诉我您找到解决方法了吗?我也有同样的问题!我在firmMessage.h中已经有了这个方法,有没有可能是其他原因导致了这个错误?.h没有提供实现。您必须自己编写此方法的代码。我应该在哪里编写它?作为您的
firmMessageDelegate
实现的一部分。如果您已经有此方法,请尝试在发出请求之前先验证您是否已收到设备令牌。