- 通过aapt2合并关联res和dex
- 通过zipalign工具对齐处理
- 通过apksigner工具签名
简单介绍就这些步骤,其中还有很多细节处理,比如多项目支持,差异化处理,缓存优化等等。这些如果手动处理基本上不可能,要让流程简单化,就需要对这些流程进行封装,这就是Gradle的作用了。帮助我们对各种应用程序构建执行流程化,减轻我们的工作量。
Gradle单独来讲,就是一个单独的构建工具,不依赖于java\android等。让我们走进gradle原始工程
- 准备Gradle
gradle是一个单独的构建工具,可以单独执行。所以一般会手动单独下载或者AS自动下载到本地:
gradle工具默认目录:
Windows:C:\Users\xxxxxx\.gradle\wrapper\dists\gradle-6.7-all
Mac:/Users/xxxxxx/.gradle/wrapper/dists/gradle-6.7-all
- 基本结构
每一个Gradle项目基本结构
| 文件 | 作用 |
| :-: | :-- |
| gradle | gradle-wrapper.jar是Gradle Wrapper的主体功能包
gradle-wrapper.properties 自动生成的配置文件
distributionBase 下载的Gradle压缩包解压后存储的主目录
distributionPath 相对于distributionBase的解压后的Gradle压缩包的路径
zipStoreBase 同 distributionBase ,只不过是存放zip压缩包
zipStorePath 同 distributionPath ,只不过是存放zip压缩包
distributionUrl gradle发行版压缩包的下载地址 |
| .gradle | 自动生成的一些记录,可以不用管它 |
| build.gradle | 文件包含项目构建所使用的脚本,是针对单个项目的具体配置 |
| setting.gradle | 是gradle项目的总体配置文件,一般会把子项目中通用的一些配置放在这个文件中 |
| gradlew.bat | windows环境下gradle执行脚本 |
| gradlew | Linux/mac环境下gradle执行脚本 |
了解了Gradle的整体结构,下面我们来一起学习下Gradle的构建流程。
最后
分享一份工作1到5年以上的Android程序员架构进阶学习路线体系,希望能对那些还在从事Android开发却还不知道如何去提升自己的,还处于迷茫的朋友!
- 阿里P7级Android架构师技术脑图;查漏补缺,体系化深入学习提升(详细点击我的GitHub领取)
- **全套体系化高级架构视频;**七大主流技术模块,视频+源码+笔记
需要架构学习笔记导图的可以点击我的GitHub领取
群内有许多技术大牛,高手如云,有任何问题,欢迎广大网友一起来交流,群内还不定期免费分享高阶Android学习视频资料和面试资料包~
8B%BF%E9%AB%98%E8%96%AA%EF%BC%81.md)
群内有许多技术大牛,高手如云,有任何问题,欢迎广大网友一起来交流,群内还不定期免费分享高阶Android学习视频资料和面试资料包~