Как исправить это сообщение об ошибке «Пожалуйста, внедрите -messaging: didReceiveRegistrationToken: должен быть предоставлен токен FCM» - PullRequest
0 голосов
/ 20 июня 2019

Я использую ionic 4 с FCM для получения уведомлений, все хорошо работает на Android, но не на iOS. Я вижу это сообщение на консоли xcode

"5.7.0 - [Firebase / Messaging] [I-FCM002023] Объект не отвечает на -messaging: didReceiveRegistrationToken :. Пожалуйста, внедрите -messaging: didReceiveRegistrationToken: для предоставления токена FCM "

Ответы [ 2 ]

0 голосов
/ 20 июня 2019

Добавьте это к методу в ваш 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")
0 голосов
/ 20 июня 2019

Сообщение в основном означает, что ваш FIRMessagingDelegate должен реализовать следующий метод, чтобы иметь возможность получать fcmToken с помощью Firebase. fcmToken обычно используется как идентификатор получателя, т. Е. Кому вы хотите отправлять сообщения

- (void)messaging:(FIRMessaging *)messaging didReceiveRegistrationToken:(NSString *)fcmToken;

Например, у вас есть класс FirebaseMessagingManager , который работает с Firebase Messaging, тогда вы можете реализовать его следующим образом:

#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 
...