Android APK 的构建流程以及Gradle多版本构建

  • Post author:
  • Post category:其他


一、APK 构建流程

1、通过AAPT2工具将各种xml文件汇总登记到R.java文件中;同时将AndroidManifest.xml生成对应的二进制文件;

2、通过AIDL工具将.aidl文件生成.java文件;

3、通过JavaCompile将.java文件生成.class文件;

4、通过dex工具将.class文件,包括项目依赖文件,生成.dex文件;

5、通过Apkbuilder工具,基于上述生成的.dex,二进制以及项目的资源文件,打包生成.apk;

6、通过ApkSigner工具,对 .apk文件进行签;

7、通过ZipAglian优化apk文件,让它运行的时候能够占用更少的内存。

二、基于Gradle打包多个版本的APP

1、gradle文件介绍。

setting.gradle文件,里面指定了依赖的仓库

project的builde.gradle,指定了gradle脚本的依赖

有了依赖和所在仓库的具体信息,就可以通过Gradle Wrapper来sync和下载gradle脚本到本地,供本地的所有项目依赖。

3、基于flavorDimensions和productFlavors配置多版本APK。

直接看步骤吧。

首先配置两个flavor.

然后在module的build.gradle文件下就自动生成下述代码。

在src文件夹下分别建立flavor1、flavor2文件夹,

在res文件中分别放同名资源,如

但是这个资源在main中需要移除,不然就会存在冲突,因为在构建的时候,是mian中的文件引用这些flavor文件,Build Variants中,可以看到多个渠道,选择了哪个渠道,对应的文件夹就被AndroidStudio挂载和高亮。

比如我选择flavor1Debug,拿到的appname就是Flavor1.



版权声明:本文为happy0li原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。