0
点赞
收藏
分享

微信扫一扫

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


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

编译android相关操作

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

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

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

 

增加全局环境变量

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

 

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来编译

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

 

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文件里的配置

目前用这个

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

 

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

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

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

 

 

 

安卓端,拷贝到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.

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

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

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

那就注释掉,见下图

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

 

> 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;

增加一个,见下图

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

 

知会编译common4正常了

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

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

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

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

 

所以又做了次序的调整

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

 

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

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

 

 

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

jenkins编译H5做的android端编译卫士app记录_运维_12

 

举报

相关推荐

0 条评论