diff --git a/plugin.xml b/plugin.xml index bdcc30944..2edba30d8 100755 --- a/plugin.xml +++ b/plugin.xml @@ -12,7 +12,7 @@ - + @@ -43,11 +43,11 @@ - + - + @@ -86,7 +86,7 @@ - + diff --git a/src/ios/PushPlugin.m b/src/ios/PushPlugin.m index 9aca1d0d9..2a1e84882 100644 --- a/src/ios/PushPlugin.m +++ b/src/ios/PushPlugin.m @@ -28,9 +28,7 @@ #import "PushPlugin.h" #import "AppDelegate+notification.h" -@import FirebaseInstanceID; -@import FirebaseMessaging; -@import FirebaseAnalytics; +@import Firebase; @implementation PushPlugin : CDVPlugin @@ -53,26 +51,27 @@ @implementation PushPlugin : CDVPlugin -(void)initRegistration; { - NSString * registrationToken = [[FIRInstanceID instanceID] token]; - - if (registrationToken != nil) { - NSLog(@"FCM Registration Token: %@", registrationToken); - [self setFcmRegistrationToken: registrationToken]; - - id topics = [self fcmTopics]; - if (topics != nil) { - for (NSString *topic in topics) { - NSLog(@"subscribe to topic: %@", topic); - id pubSub = [FIRMessaging messaging]; - [pubSub subscribeToTopic:topic]; + [[FIRInstanceID instanceID] instanceIDWithHandler:^(FIRInstanceIDResult * _Nullable result, NSError * _Nullable error) { + NSString * registrationToken = result.token; + + if (registrationToken != nil) { + NSLog(@"FCM Registration Token: %@", registrationToken); + [self setFcmRegistrationToken: registrationToken]; + + id topics = [self fcmTopics]; + if (topics != nil) { + for (NSString *topic in topics) { + NSLog(@"subscribe to topic: %@", topic); + id pubSub = [FIRMessaging messaging]; + [pubSub subscribeToTopic:topic]; + } } - } - - [self registerWithToken:registrationToken]; - } else { - NSLog(@"FCM token is null"); - } + [self registerWithToken:registrationToken]; + } else { + NSLog(@"FCM token is null"); + } + }]; } // FCM refresh token @@ -81,7 +80,6 @@ - (void)onTokenRefresh { #if !TARGET_IPHONE_SIMULATOR // A rotation of the registration tokens is happening, so the app needs to request a new token. NSLog(@"The FCM registration token needs to be changed."); - [[FIRInstanceID instanceID] token]; [self initRegistration]; #endif }