从终端运行React Native iOS版本构建

时间:2016-10-28 10:31:50

标签: ios react-native react-native-cli

我正在尝试直接从终端运行发布版本,但我没有找到这样做的选项。

从XCode开始,需要做的是:

  

产品 - >方案 - >编辑方案(cmd +<),确保你在   从侧面运行选项卡,并将Build Configuration下拉列表设置为   释放。

http://facebook.github.io/react-native/docs/running-on-device-ios.html#building-your-app-for-production

react-native-cli可以使用任何选项来执行相同操作吗?像react-native run-ios -configuration Release

这样的东西

我的目标是生成一个不需要服务器运行的构建,例如提供给QA团队。

3 个答案:

答案 0 :(得分:33)

我为React Native项目做了一个PR来允许这个功能。 PR可在此处查看:https://github.com/facebook/react-native/commit/ca7cbdee858e84c4a74a2d9c7be151f5cfdcfbfe

因此,将来要从终端运行发布版本,您只需输入以下命令:react-native run-ios --configuration Release

如果您想在真实设备上运行项目,请使用--device参数:

react-native run-ios --configuration Release --device "Your Device Name"

答案 1 :(得分:1)

据我所知,反应原生并不具备开箱即用的东西。

但是因为您的react-native应用程序也是一个内部具有react-native的普通Objective-C应用程序,您可以重用现有工具来为您执行构建/打包。

请查看以下文章,了解如何使用fastlane自动构建。

https://shift.infinite.red/simple-react-native-ios-releases-4c28bb53a97b#.i1otlntat

答案 2 :(得分:0)

处理捆绑的 react-native 脚本在这里:

  ./node_modules/react-native/scripts/react-native-xcode.sh

它基本上是这样做的:

  node "./node_modules/react-native/cli.js" bundle  --entry-file "index.js" --platform ios --dev false --reset-cache --bundle-output "./app.app/main.jsbundle" --assets-dest "./app.app"

其中 bundle-output 和 asset-dest 通常会指向您的 xcode 构建输出。例如:

~/Library/Developer/Xcode/DerivedData/MyApp-enjmlvtpwwpnsxanntxwgpneywcy/Build/Intermediates.noindex/ArchiveIntermediates/MyApp/BuildProductsPath/Release-iphonesimulator/MyApp.app