CentOS 7 下终端部署 Android SDK 与 Gradle 打包 APK

来自Silica Library | 間奏時光
Silica讨论 | 贡献2020年4月21日 (二) 08:48的版本 (创建页面,内容为“Category:Java Category:Android 2020-04-21 16:23 == 环境 ==   CentOS 7.3 (64-bit),这里是阿里云国际香港轻量,主要是内存在同价格…”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳到导航 跳到搜索

2020-04-21 16:23

环境

  CentOS 7.3 (64-bit),这里是阿里云国际香港轻量,主要是内存在同价格相比之下比较大 ($3.4/mo, CPU 1 Core, Memory 1 GB, SSD 25 GB, Bandwidth 30 Mbps(Peak), Transfer 1 TB ),新注册还送 $10,算下来一台机器开半年都只是 $10 多一点。

工程以及 SDK 版本

  这里主要用于示例,因为 Android SDK 要自己额外下载和安装,事先了解自己的项目大概要用到哪些版本的 SDK,可以不用装到一半的时候手忙脚乱不知道改装哪些。
  比如下面这里:

compileSdkVersion 28
buildToolsVersion "28.0.3"
defaultConfig {
    minSdkVersion 21
    targetSdkVersion 28
}

  因此我们可以得出待会要装 build-tools;28.0.3platforms;android-28,还要安装 platform-tools

部署步骤

安装 JDK

  到 Java SE SDK下载 Java SDK。这里下载 Linux x64 RPM Package。现在在 Oracle 下载要登录帐号,没有的话需要注册一下。然后在浏览器中弹出下载时不用下载,复制下载地址到 CentOS 中使用 wget 下载到服务器中,如:

wget https://download.oracle.com/otn/java/jdk/8u251-b08/3d5a2bb8f8d4428bbe94aed7ec7ae784/jdk-8u251-linux-x64.rpm?AuthParam=1587458217_40840218d677901cf0c11eb64e9649dc

  如果没有安装 wget 的话,需要:

yum install wget

  下载后改一下名字,比如:

mv jdk-8u251-linux-x64.rpm?AuthParam=1587458217_40840218d677901cf0c11eb64e9649dc jdk.rpm

  然后开始安装:

rpm install jdk.rpm

  验证安装是否成功:

java -version

  返回:

java version "1.8.0_251"
Java(TM) SE Runtime Environment (build 1.8.0_251-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.251-b08, mixed mode)

安装 Android SDK

  尽量使用此版本,最新版本有问题。

wget https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip

mkdir -p /opt/android/sdk
unzip sdk-tools-linux-3859397.zip -d /opt/android/sdk

  如果没有安装 unzip 的话,需要:

yum install unzip

  查看可用的 SDK 版本:

cd /opt/android/sdk/tools/bin/
./sdkmanager --list

  我这里需要 API 28,因此:

./sdkmanager "build-tools;28.0.3" "platforms;android-28" "platform-tools"

  设置环境变量:

vi /etc/profile

  在最后加上:

export ANDROID_HOME=/opt/android/sdk
PATH=$PATH:$ANDROID_HOME:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$ANDROID_HOME/emulator:$ANDROID_HOME/tools/bin

  保存退出,更新一下变量:

source /etc/profile

  验证安装是否成功:

adb version

  返回:

Android Debug Bridge version 1.0.41
Version 29.0.6-6198805
Installed as /opt/android/sdk/platform-tools/adb

安装 Gradle

wget https://downloads.gradle-dn.com/distributions/gradle-6.3-all.zip
mkdir /opt/gradle
unzip gradle-6.3-all.zip -d /opt/gradle/
vi /etc/profile

  在最后加上:

export PATH=$PATH:/opt/gradle/gradle-6.3/bin

  保存退出,更新一下变量:

source /etc/profile

  验证安装是否成功:

gradle -v

  返回:

------------------------------------------------------------
Gradle 6.3
------------------------------------------------------------

Build time:   2020-03-24 19:52:07 UTC
Revision:     bacd40b727b0130eeac8855ae3f9fd9a0b207c60

Kotlin:       1.3.70
Groovy:       2.5.10
Ant:          Apache Ant(TM) version 1.10.7 compiled on September 1 2019
JVM:          1.8.0_251 (Oracle Corporation 25.251-b08)
OS:           Linux 3.10.0-693.11.6.el7.x86_64 amd64

  至此环境已经部署完成。

打包项目 APK

  将项目复制到服务器上 (如使用 WinSCP,或 Git 两端同步等),进入到项目的 app 目录,执行:

# Release
gradle assembleRelease

# Debug
gradle assembleDebug

  完事后就能够在 build 文件夹里找到了。