Android编译构建流程之Gradle概览
本系列文章是关于Android编译构建流程的,目的在于加深对Android编译构建过程中每个环节用到的技术理解和掌握,搞清楚编译过程是怎么把一堆零散的文件按照设定的命令组合在一起打包出我们所期望的apk包,进一步搭配组件化去理解学习CI/CD持续集成、持续发布的整个体系流程构建,当然这是一个长期的过程。
目前规划的目录:
Gradle Groovy语法
Gradle Groovy语法这部分不会详细讲解,有很多优秀资源,这里推荐一个系列
Gradle 执行时序
不会开篇详细讲解。
作用和定义:Gradle 执行时序 (初始化->配置->执行: 初始化:解析setting.gradle文件,目的是为了获取需要编译的model;
配置:解析每个module.gradle,处理依赖、属性等,每一个module任务会根据依赖关系形成一个task链表;
执行:按照配置阶段的task链表顺序执行,被依赖的task会先执行)
Gradle Task
不会开篇详细讲解。
作用和定义:Gradle Task (Gradle的执行单元,Gradle通过Task来完成任务构建;
自定义插件扩展Extension,作为project中的build脚本和自定义插件通信的桥梁)
Gradle Plugin
会开篇详细讲解(加入Android Studio插件开发)。
作用和定义:
(模块化构建脚本,脚本的公共部分可以抽取出来封装成为插件,供多个build.gradle使用,增加复用性<个人认为插件就是gradle脚本的另一种表现形式>)
Gradle APT
会开篇详细讲解(加入Kotlin APT)。
作用和定义:(新增class文件)
Gradle Transform
会开篇详细讲解。
作用和定义:
AGP
会开篇详细讲解。
作用和定义:
Gradle AMS
会开篇详细讲解(会介绍AOP的常用实现方案,AOP会专门开篇)。
作用和定义:
Gradlew命令
会开篇详细讲解。
gradlew命令介绍
作用和定义:
资源合并
会开篇详细讲解。
作用和定义:
认识Android SDK源码结构
会开篇详细讲解。
作用和定义:
认识Android工程结构
会开篇详细讲解。
作用和定义:
应用实战
会开篇详细讲解。
作用和定义: