Не получать Push-уведомления с использованием Firebase и Objective C

Я пытаюсь использоватьFirebase для push-уведомлений. я успешно установилFirebase А такжеFirebase messaging с помощьюCocoapods.

Я использовал приведенный ниже код

 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    [FIRApp configure];

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(tokenRefreshCallback:) name:kFIRInstanceIDTokenRefreshNotification object:nil];


    UIUserNotificationType allNotificationsType = (UIUserNotificationTypeSound | UIUserNotificationTypeAlert | UIUserNotificationTypeBadge);

    UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:allNotificationsType categories:nil];
    [application registerUserNotificationSettings:settings];

    [application isRegisteredForRemoteNotifications];

    return YES;
}


 -(void)applicationDidEnterBackground:(UIApplication *)application {

    [[FIRMessaging messaging] disconnect];
    NSLog(@"Disconnect from FCM");
}

- (void)applicationDidBecomeActive:(UIApplication *)application {
     [self connectToFirebase];
}

- (void) application:(UIApplication *) application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:( void (^)(UIBackgroundFetchResult))completionHandler{

    // Pring The Message Id
    NSLog(@"Mesage Id : %@",userInfo[@"gcm.message_id"]);

    // Print Full Message
    NSLog(@"%@",userInfo);
}

#pragma mark -- Custom Firebase code


- (void)tokenRefreshCallback:(NSNotification *) notification{
    NSString *refreshedToken = [[FIRInstanceID instanceID] token];
    NSLog(@"IstanceID token: %@", refreshedToken);

    // Connect To FCM since connection may have failed when attempt before having a token
    [self connectToFirebase];
}

-(void) connectToFirebase{

    [[FIRMessaging messaging] connectWithCompletion:^(NSError * _Nullable error)
     {
         if ( error != nil)
         {
             NSLog(@"Unable to Connect To FCM. %@",error);
         }
         else
         {
             NSLog((@"Connected To FCM"));
         }
     }];
}

Когда я запускаю приведенный выше код, используя мой iPhone, связанный сXcode при отправке сообщения из консоли Firebase у меня возникают следующие проблемы

1). когда приложение находится на переднем плане (активно), журнал показывает следующее сообщение

Mesage Id : (null){
    CustommData = "First Message";
    "collapse_key" = "abcd.iospush.FireBasePush";
    from = 555551391562;
    notification =     {
        badge = 4;
        body = "Test Message";
        e = 1;
        sound = default;
        sound2 = default;
    };
}

уведомлениеMessage Id являетсяnull.

2). Мой телефон не показывает никаких уведомлений вЦентр уведомлений находится ли приложение на переднем плане, в фоновом режиме или закрыто

Я хочу, чтобы пользователь получал push-уведомления, когда приложение находится в фоновом режиме, на переднем плане или закрыто

Ответы на вопрос(3)

Ваш ответ на вопрос