在iOS共享扩展中使用React Native

时间:2015-11-30 03:17:38

标签: ios react-native ios-frameworks javascriptcore share-extension

跳过此facebook/react-native#1626 GitHub issue,我有一个关于在iOS share extension

中设置React Native视图的问题

我发布了一个显示问题的example GitHub repo,总结如下。

到目前为止,概念验证设置非常简单,但我觉得我错过了一些非常简单的事情。

在我的react-native init脚手架Xcode项目中,我创建了一个新的共享扩展目标,并在其中linked the appropriate React Native static librarieslibReact.alibRCTWebSocket.a等)。这使我们的项目编译为very simple 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设置。很想知道是否有任何明显的区域需要调查,或者是否有其他人已经解决了这个问题。谢谢!

1 个答案:

答案 0 :(得分:5)

我遇到了同样的错误并通过添加" -ObjC"来修复它。在我的应用扩展目标构建设置(其他链接器标志)