Вызов метода из класса во время выполнения в задаче C - PullRequest
0 голосов
/ 23 июня 2018

Я хочу вызвать Firebase SubscribeToTopic во время выполнения в задаче C. И это было успешно при использовании executeSelector, как реализовано ниже:

Class firebase = NSClassFromString(@"FIRMessaging");
SEL selectSubscribeToTopic=NSSelectorFromString(@"subscribeToTopic:");
SEL selectMessaging=NSSelectorFromString(@"messaging");

[[firebase performSelector:selectMessaging] performSelector:selectSubscribeToTopic withObject:topic withObject:^(NSError * _Nullable error) {
    if (error != nil) {
        NSLog(@"Framework Error while Subscribe");
    }
    else{
        NSLog(@"Framework Subscribed to %@ topic",topic);
    }
}];

Но блок завершения никогда не выполняется.Может ли кто-нибудь предложить наилучшее возможное предложение для реализации во время выполнения метода Firebase SubscribeToTopic.

Заранее спасибо!

1 Ответ

0 голосов
/ 24 июня 2018

Ваш селектор subscribeToTopic:. Это означает, что метод принимает только один аргумент; NSString, которая описывает тему, я бы предположил.

Итак, передача блока завершения в качестве второго аргумента ничего не даст. В среде выполнения нет ничего волшебного, что заставило бы выполнить блок завершения, просто передав его в качестве дополнительного аргумента.

Все это поднимает другой вопрос; Почему вы вообще используете performSelector:

...