事件起因:
公司在使用react-native开发解剖3D软件,需要和unity进行融合,在组件选择上,使用了react-native-unity-view这款插件,在融合过程中,踩了很多坑,花费精力最大的,是年后IOS升级为12.1后,集成方案集中出现闪退.
Issue #79
iOS crashes on launch in release builds only #79
Cash log 如下
|
|
最初的解决方案
- 升级
react-native
版本到0.57.0 rm -fr node_modules
- 升级插件版本
react-native-unity-view": "^1.2.1"
- 在Xcode里
Setting "Strip Linked Product" to NO
成功阻止了编译闪退,但发布后被审核告知闪退.来来回回几次后,终于重新测试发现,居然是打包为release IPA file
后才开始闪退-_-!!
再次尝试
之后在issue里提问回帖,得到如下方案:
在配置文件里加入
|
|
之后在测试机上运行,没有闪退.于是提交审核,发布了版本.之后有用户反馈在IPHONE XS Max
上闪退 -_-!!!
最后的尝试
之后继续回帖,在 JanOwiesniak和mtostenson 的建议下,进行如下改动:
- using XCodes new build system or the legacy build system
- Reinstall node_modues
- Update Unity from 2018.2.14f1 to 2018.3.6f1
- Build UnityExport
- Patch UnityExport jiulongw/swift-unity#120 (comment) #79 (comment)
- Update react-native-unity-view to 1.3.3
- Update react-native to 0.57+
- Patch react-native moduleNames() (#79 (comment)
- Add AVKit.framework in Xcode