jenkins编译H5做的android端编译卫士app记录

编译android相关操作

先安装linux下的sdk tools,在官方地址上 有命令需要的sdk tools工具,我下载的是sdk-tools-linux-4333796.zip unzip进行解压,一般新建一个android目录再解压

同时安装全局工具gradle 编译工具

 

增加全局环境变量

 

bin/sdkmanager --licenses

bin/sdkmanager --list

bin/sdkmanager --install "build-tools;27.0.3"

bin/sdkmanager --install "platforms;android-25"

可以不需要安装相关,因为编译android的时候会自动去下载需要的工具

卫士公共打包,用npm gulp方式打包,为android与ios提供基础包

目前卫士版本只能用nodejs8.9.4来编译

 

echo $PATH

node -v

npm -v

gulp -v

webpack -v

npm install

gulp dist

rm -rf includes node_modules src typescript unpackage

rm -f *.js

rm -f login.html packag*.json readme.txt tsconfig.json yarn.lock

rm -rf $JOB_NAME.zip

zip -r $JOB_NAME.zip *

之前出现的几个问题就是

1、只能用nodejs8.9.4编译,用最新编译会出现错误

2、主要要看gulpfile.js文件里的配置

目前用这个

 

不能用里面的watch,这样一直会在转动,等待代码更新后自动更新,这个可能适合于调试阶段

h5部分编译好后,只有5块需要拷贝到安卓/ios项目中:

 

 

 

安卓端,拷贝到assets/apps/HelloH5/www,修改上图manifest.json中的版本号和AndroidManifest.xml中的版本号,并把AndroidManifest.xml中的versionCode增大一个即可打包发布。

common4  卫士 android端编译

FAILURE: Build completed with 2 failures. 1: Task failed with an exception. ----------- * Where: Build file '/root/.jenkins/workspace/common4/app/build.gradle' line: 51 * What went wrong: A problem occurred evaluating project ':app'. > Cannot convert URL 'F:/web-app/common4/.keystore' to a file. * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

用下面办法解决 ==============================================================================

A problem occurred configuring project ':app'. > The SDK directory '/root/.jenkins/workspace/common4/C:\Users\Administrator\AppData\Local\Android\Sdk' does not exist.

那就注释掉,见下图

 

> Task :app:compileReleaseJavaWithJavac /root/.jenkins/workspace/common4/app/src/main/java/com/ggb/JSPushPlugin.java:8: error: package com.huawei.hms.api does not exist import com.huawei.hms.api.HuaweiApiClient;

增加一个,见下图

 

知会编译common4正常了

不过实际没有编译出来,是之前工程里已经编译好的文件,所以在build里先删除原先的这些文件,

再编译release结果是出现未签名的apk,结果安装出问题了

后面加上,这个,出现编译错误,

 

所以又做了次序的调整

 

这次总算生产app-release.apk文件了

 

 

cp /root/.jenkins/workspace/common-2/common-2.zip /root/.jenkins/workspace/common4

rm -rf $JENKINS_HOME/workspace/common4/app/src/main/assets/apps/HelloH5/www/*

unzip -o $JENKINS_HOME/workspace/common4/common-2.zip -d $JENKINS_HOME/workspace/common4/app/src/main/assets/apps/HelloH5/www

rm -f $JENKINS_HOME/workspace/common4/common-2.zip