前言

当我们使用 Jenkins 在 Centos 上打包 Android 的时候,需要在 Centos 上安装 Android SDK 才能打包。

1.下载sdk-tools-linux-4333796.zip

1
2
3
4
5
[root@CentOS-Master share]# wget https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip
[root@CentOS-Master share]# unzip sdk-tools-linux-4333796.zip -d android-sdk
[root@CentOS-Master share]# cd android-sdk
[root@CentOS-Master android-sdk]# ls
tools

2.配置android 环境变量

1
[root@CentOS-Master android-sdk]# vim /etc/profile

输入然后保存

1
2
export ANDROID_HOME="/usr/share/android-sdk"
export PATH="$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools:$PATH"

保存配置,重新刷新配置

1
[root@CentOS-Master android-sdk]# source profile

3.使用sdkmanager相关命令安装build-tools, platforms, platform-tools
首先运行:sdkmanager –list

1
[root@CentOS-Master android-sdk]# sdkmanager --list

安装build-tools,platform-tools,platforms的25.0.2版本

1
sdkmanager "build-tools;28.0.2" "platforms;android-27" "platform-tools" "ndk-bundle" "extras;android;m2repository" "extras;google;m2repository" "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.2" "tools"

然后如果 Jenkins 控制台报错这些

Centos 下安装 Android SDK 供 Jenkins 打包使用

那就按照错误提示,安装所需的 build-tools;30.0.3platforms;android-30

1
2
sdkmanager "build-tools;30.0.3"
sdkmanager "platforms;android-30"

然后如果还报错,就

1
2
cd /usr/share/android-sdk/tools/bin/
sdkmanager --licenses

最后会有一大波提示(y/n)

全部y执行到底,完成后重新 Jenkins 编译即可

参考文章

CentOS下配置Jenkins Android自动化打包
ERROR: Failed to install the following Android SDK packages as some licences have not been accepted