jenkins构建React Native Android项目

27 篇文章 0 订阅
2 篇文章 0 订阅
        使用jenkins来实现自动化构建,可以简化开发测试的流程,原来debug包都不会做混淆,现在用了jenkins会自动的打混淆包,除了环境不一样,其他配置debug和release包都一样,这样就可以避免代码混淆带来的问题,此外,还可以打出各种平台的包,测试包与生产包、应用市场分发包等,推荐大家在自己电脑上或服务器上搭建一个Jenkins。

这里介绍一下我在项目中使用了React Native之后的jenkins配置,默认已经在jenkins上已经搭建好了普通Android的打包环境,如果想打带有React-native的apk,首先在React官方的Generating Signed APK中有bundle命令来生成index.android.bundle

$ react-native bundle --platform android --dev false --entry-file index.android.js \
  --bundle-output android/app/src/main/assets/index.android.bundle \
  --assets-dest android/app/src/main/res/

所以我们在Android打包之前首先要执行这个命令,明确了这个区别,就开始动手了。另一篇jenkins的文章可以参考点击打开链接

(1)首先在jenkins服务器上升级buildToolsVersion,compileSdkVersion 到最新,如果下载慢,建议换成淘宝镜像 

    注意一点,很多同学搭建换成后,执行
    react-native init AwesomeProject
    会发现卡了半天还是没有成功,这个时候建议你使用
    npm config set registry=https://registry.npm.taobao.org
    将npm的源换成淘宝镜像

环境安装成功之后,开始配置我们的Jenkins。

(2)通过jenkins Invoke Gradle script执行assembleQa –stacktrace task来打包的, 如下图所示,


如果我们希望在执行这个task之前让React Native 生成index.android.bundle,那么我们可以在build.gradle写这样的task,但是这里我介绍一个更简单的方式,在jenkins中增加构建步骤->windows系统选择Execute windows batch command ||mac系统选择Excute shell 

我们按住Execute shell的右上角,将它拖动到 Invoke Gradle script的前面,这样就可以先执行Execute shell中的命令

(3)接下来开始写Execute shell中的命令

react-native bundle --platform android --dev false --entry-file react-native/index.android.js \
 --bundle-output app/src/main/assets/index.android.bundle \
 --assets-dest app/src/main/res/
  
  
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

测试一下,失败,报react-native: command not found 
google一下,发现jenkins的shell命令是跑在自己的Shell中的,这意味着什么?需要我们指定绝对路径,好吧,更换一成绝对路径。

which react-native
  
  
  • 1
  • 1

获取react-native的绝对路径,文件路径也一并换掉,整个命令变成了

/usr/local/bin/react-native bundle --platform android -dev false --entry-file /Users/jenkins/.jenkins/jobs/testAndroid-qa/workspace/react-native/index.android.js \
 --bundle-output /Users/jenkins/.jenkins/jobs/testAndroid-qa/workspace/app/src/main/assets/index.android.bundle \
 --assets-dest /Users/jenkins/.jenkins/jobs/testAndroid-qa/workspace/app/src/main/res/
  
  
  • 1
  • 2
  • 3
再来构建->成功。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值