2015-10-01 79 views
7

我想自动执行我的React-Native应用程序的构建+部署,例如提交TestFlight构建。如何从命令行构建和部署反应原生应用程序?

之前提交应用程序,我通常做到以下几点:

  1. 我跑react-native bundle
  2. 我切换生成配置Release在架构
  3. 我相对于jsCodeLocation在AppDelegate中的代码注释掉.m

是否可以从终端编写单个命令来执行这些步骤,以便我可以随后depl用自动化工具例如与fastlane

到目前为止,我只需要自动化第二步和第三步。

要更改jsCodeLocation我可以添加一个条件,例如,

#if "<build configuration is release>" 
    jsCodeLocation = [NSURL URLWithString:@"http://localhost:8081/index.ios.bundle"]; 
#else 
    jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"]; 
#end 

但我不知道如何达到构建配置设置。

回答

14

我解决了重写AppDelegate.m作为

#ifdef DEBUG 
    jsCodeLocation = [NSURL URLWithString:@"http://localhost:8081/index.ios.bundle"]; 
#else 
    jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"]; 
#endif 

现在我可以用FASTLANE没有编辑文件进行部署。

+0

只是说,应用程序是客户端,而不是服务器端,所以主机名'0.0.0.0'将使调试版本无法正常工作。 (虽然您可以在应用程序的调试菜单中修改它) – RnMss

相关问题