MacOS安装Android APK编译环境(Gradle)

java jdk安装不再赘述

安装Android sdk-tools

  1. 下载Android sdk-tools安装包,下载页面 https://developer.android.com/studio

下载地址: https://dl.google.com/android/repository/sdk-tools-darwin-4333796.zip

  1. 创建ANDROID_HOME目录,我以~/Android目录为例
	mkdir ~/Android
	unzip -d ~/Android sdk-tools-darwin-4333796.zip
  1. 修改环境变量文件~/.bash_profile
ANDROID_HOME=/Users/USERNAME/Android
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

source ~/.bash_profile 使环境变量生效

  1. 使用sdkmanager安装需要的sdk包
sdkmanager --list  列出已安装和可用的包
sdkmanager --licenses 列出6SDK包的licenses,全都接受一次
sdkmanager platform-tools 安装平台工具包
sdkmanager "build-tools;28.0.3" 安装需要的版本的build工具包

安装Gradle

  1. 下载

下载页面 https://gradle.org/releases/

  1. 安装

安装参考页面 https://gradle.org/install/

  1. 修改环境变量文件~/.bash_profile
export PATH=$PATH:/opt/gradle/bin

source ~/.bash_profile 使环境变量生效

  1. 验证安装是否成功
#gradle -v

Welcome to Gradle 5.6.3!

Here are the highlights of this release:
 - Incremental Groovy compilation
 - Groovy compile avoidance
 - Test fixtures for Java projects
 - Manage plugin versions via settings script

For more details see https://docs.gradle.org/5.6.3/release-notes.html


------------------------------------------------------------
Gradle 5.6.3
------------------------------------------------------------

Build time:   2019-10-18 00:28:36 UTC
Revision:     bd168bbf5d152c479186a897f2cea494b7875d13

Kotlin:       1.3.41
Groovy:       2.5.4
Ant:          Apache Ant(TM) version 1.9.14 compiled on March 12 2019
JVM:          1.8.0_77 (Oracle Corporation 25.77-b03)
OS:           Mac OS X 10.11.6 x86_64

编译前准备

进入项目目录,配置好build.gradle,gradle.properties等等相关文件

./gradlew tasks 列出任务列表,同时会将一切缺少的依赖自动安装好

如果一切就绪,没任何错误的话,就会列出所有可执行的task了

然后就可以执行gradle build进行编译了

编译好的APK文件在–项目目录/app/build/outputs/apk目录下

对APK进行签名

如果需要发布的APK包,需要用私钥进行签名

  1. 使用 keytool 生成一个私钥,如下所示:
keytool -genkey -v -keystore my-release-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias my-alias

上面的示例会提示您输入密钥库和密钥的密码,并提示您在“Distinguished Name”字段中为您的密钥输入相应的名称。随后,它会生成一个名为 my-release-key.jks 的密钥库文件,并将其保存在当前目录中(您可以根据自己的喜好将其移至任何位置)。该密钥库包含一个有效期为 10,000 天的密钥。

  1. 对APK进行签名
  1. 使用 zipalign 对齐未签名的 APK:
zipalign -v -p 4 my-app-unsigned.apk my-app-unsigned-aligned.apk
  1. 通过 apksigner 使用您的私钥为 APK 签名:
apksigner sign --ks my-release-key.jks --out my-app-release.apk my-app-unsigned-aligned.apk

以上两个工具在ANDROID_HOME目录build-tools对应的版本目录下可以找到