Использование React Native в расширении общего доступа iOS

После этой проблемы facebook/react-native#1626 GitHub у меня возникла вопрос о настройке представления React Native в Расширение общего доступа iOS

Я разместил пример репозитория GitHub, который демонстрирует проблему, описанную ниже.

Пока установка для проверки концепции довольно проста, но я чувствую, что упускаю что-то очень простое.

В моем react-native init созданном проекте Xcode я создал новую цель расширения общего доступа и внутри нее связал соответствующие статические библиотеки React Native (libReact.a, libRCTWebSocket.a и т. д.). Это приводит к компиляции нашего проекта для очень просто ShareViewController это просто UIViewController.

После активации моего общего доступа из другого приложения мой ShareViewController инициализируется, но сразу же падает со следующими сообщениями в журнале:

2015-11-29 12:44:34.721 [warn][tid:com.facebook.React.JavaScript][RCTContextExecutor.m:129] 'undefined is not an object (evaluating \'RCTWebSocketModule.connect\')'
2015-11-29 12:44:34.726 ShareExtension[66473:2179009] -[RCTBatchedBridge redBox]: unrecognized selector sent to instance 0x7fb59d8ab200
2015-11-29 12:53:47.160 [warn][tid:com.facebook.React.JavaScript][RCTContextExecutor.m:129] 'Requiring module "InitializeJavaScriptAppEngine" which threw an exception'
2015-11-29 12:53:47.160 ShareExtension[66473:2179009] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[RCTBatchedBridge redBox]: unrecognized selector sent to instance 0x7fb59d8ab200'

Строка 'Requiring module "InitializeJavaScriptAppEngine" which threw an exception' выглядит особенно подозрительно и наводит меня на мысль, что мне не хватает какой-то базовой настройки JavaScriptCore в расширении общего доступа. Любопытно узнать, есть ли какие-либо очевидные области для исследования, или кто-то еще решил эту проблему. Спасибо!


person andrewsardone    schedule 30.11.2015    source источник


Ответы (1)


У меня была такая же ошибка, и я исправил ее, добавив «-ObjC» в настройки целевой сборки моего приложения (другие флаги компоновщика)

person djioul    schedule 04.12.2015
comment
Хороший улов, @dijoul! Добавление этого флага компоновщика устранило проблему. Вот коммит. Спасибо! - person andrewsardone; 05.12.2015