#ios #react-native #nsnotificationcenter
#iOS #react-native #nsnotificationcenter
Вопрос:
Я написал собственный модуль, чтобы соединить собственный код iOS (objective-c) с моим собственным кодом react. Я пытаюсь прослушивать события через NSNotificationCenter в собственном модуле, но я не получаю никаких событий. Я настраиваю прослушиватель в init в своем модуле. Я включил код, который прослушивает события, описанные ниже. К сожалению, кажется, что мои методы никогда не выполняются. Я неправильно настроил?
- (instancetype)init
{
self = [super init];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(receivedData:)
name:ProtocolReceivedData
object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(receivedEvent:)
name:ProtocolReceivedEvent
object:nil];
return self;
}
- (void)receivedData:(NSNotification *)notification {
NSLog(@"%@", @"NATIVE MODULE HAS RECEIVED DATA");
}
- (void)receivedEvent:(NSNotification *)notification {
NSLog(@"%@", @"NATIVE MODULE HAS AN EVENT");
}
Код, который отправляет уведомление, выглядит следующим образом,
[[NSNotificationCenter defaultCenter] postNotificationName:ProtocolReceivedEvent
object:self
userInfo:userInfo];
Комментарии:
1. Хорошо. После долгих размышлений оказалось, что мои методы работали так, как ожидалось. Однако NSLogs в моем собственном модуле не отображаются в консоли разработчика Xcode.