前言
安卓APP的开发小伙伴反应想要使用Jenkins来打包APK,代替其本地打包,因为会影响其使用。
于是就在本地环境先进行实践操作,这里就记录下。
资源列表
名称 | 资源类型 | 链接地址 | 备注 |
JDK11 | JAVA环境 | 官网下载页面 | Android SDK需使用11版本 |
Gradle | 打包工具 | 官网下载页面 | 按自身项目要求下载所需版本 |
Android Command line tools | Android工具 | 官网下载页面 | 下载Command line tools only 即可 |
Jenkins | 任务工具 | 官网下载页面 | 自行安装 |
配置环境
JDK:
tar zxf jdk-11.0.17_linux-x64_bin.tar.gz -C /usr/local/ echo 'export JAVA_HOME=/usr/local/jdk-11.0.17' > /etc/profile.d/java.sh echo 'export PATH=$JAVA_HOME/bin:$PATH' >> /etc/profile.d/java.sh source /etc/profile.d/java.sh java -version
Gradle:
unzip -q gradle-7.2-bin.zip mv gradle-7.2 /usr/local/ echo 'export PATH=$PATH:/usr/local/gradle-7.2/bin' > /etc/profile.d/gradle.sh
source /etc/profile.d/gradle.sh gradle -v
Android Command line tool:
unzip -q commandlinetools-linux-9477386_latest.zip mv cmdline-tools/ /usr/local/ mkdir /usr/local/android_sdk echo 'export ANDROID_HOME=/usr/local/android_sdk' > /etc/profile.d/android.sh echo 'export PATH=$PATH:/usr/local/cmdline-tools/bin' >> /etc/profile.d/android.sh source /etc/profile.d/android.sh
sdkmanager --version --sdk_root=/usr/local/android_sdk
下载Android SDK:
sdkmanager --sdk_root=/usr/local/android_sdk "platform-tools" "build-tools;30.0.3" "platforms;android-31"
Tips:根据自身项目选择需要的SDK套件和版本。
其会先打印License Agreement,输入y接受即可开始下载。
直接打包
拉取开发上传的Demo代码,在本地进行打包测试:
cd /opt git clone -b master http://192.168.2.12/android/jekins-test.git cd jekins-test gradle app:clean gradle app:assembleRelease
修改使用本地Nexus库:
vim settings.gradle
... dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() maven { allowInsecureProtocol true url 'http://127.0.0.1:8081/repository/maven-public/' credentials { username 'admin' password 'yourpass' } } } } ...
进行打包:
gradle app:clean gradle app:assembleRelease
Tips: 第一次打包需要拉取依赖,需要些时间,这里我之前执行了下载,所以时间比较短;APK包生成的文件名和路径为项目中定义的。
页码: 1 2