Могут быть и другие варианты, но я нашел следующий потенциальный ответ в комментариях к средней статье, которая привела меня к одному решению:
https://medium.com/@ercp42/i-got-this-error-ceacd08191b3
«Для тех, кто испытывает ту же проблему, я исправил ее, обернув импорт NetworkExtension и код, в котором он используется, с #if! TARGET_IPHONE_SIMULATOR, чтобы обойти эту проблему».
Это было немного больше, по крайней мере для меня.
Я действительно обернул реализацию @implementation IOSWifiManager
в файле IOSWifiManager.m с #if TARGET_OS_IPHONE && !TARGET_OS_SIMULATOR
и оставил гораздо более простое выражение else, чтобы построить его на симуляторе:
#else
@implementation IOSWifiManager
RCT_EXPORT_MODULE();
@end
#endif
Я также вошел в настройки сборки и в разделе «Связывание других флагов компоновщика» изменил значения для симулятора iOS и любой архитектуры на следующее:
"OTHER_LDFLAGS[arch=*]" = (
"$(inherited)",
"-ObjC",
"-lc++",
"-framework",
NetworkExtension,
);
"OTHER_LDFLAGS[sdk=iphonesimulator*]" = (
"$(inherited)",
"-ObjC",
"-lc++",
);
Наконец, я изменил инфраструктуру сетевых расширений с обязательной на необязательную и убедился, что мы поддерживаем правильные архитектуры сборки. Надеюсь, это поможет любому, кто столкнется с той же проблемой!