Android Gradle学习系列(二)自定义Gradle插件

本文介绍了Gradle构建的生命周期,包括初始化、配置和执行阶段,并详细讲解了如何采用Groovy自定义Gradle插件。通过创建一个检查Android项目SDK版本的插件,展示了在afterEvaluate回调中实现项目配置规范化的逻辑,确保编译时遵循设定的SDK版本规则。
摘要由CSDN通过智能技术生成

Gradle是一个构建工具,既然是一个构建工具,那么在构建项目的时候肯定有它生命周期,Gradle插件可以在指定的生命周期中插入一些自定义的逻辑,从而实现在项目的构建过程中完成我们想要的功能。Android中常见的 'apply plugin: 'com.android.application',其实引入的就是一个Google为我们开发好的插件

 

一、Gradle构建的生命周期

在讲解Gradle插件之前,先来看看Gradle的构建生命周期是怎么样的

 

1.Gradle构建的三个生命周期阶段

  • 初始化阶段:读取setting.gradle, 分析出项目包含的project及其他配置

  • 配置阶段:递归配置根项目和下面的子项目,主要涉及配置分析即task构建,最后生成task依赖有向图

  • 执行阶段:执行task

     用一张图表示如下(引用于网络)

 

2.关于Project

 Project在Gradle中代表一个工程module,其实它相当于Java中的一个类,在Android中每一个子模块都是一个project,同时根项目也是一个project,即每一个build.gradle对应一个project,Project提供的生命周期方法有:

//在 Project 进行配置前调用
void beforeEvaluate(Closure closure)
//在 Project 配置结束后调用
void afterEvaluate(Closure closure)

beforeEvaluate 必须在父模块的 build.gradle 对子模块进行配置才能生效,因为在当前模块的 build.gradle 中配置,它自己本身都没配置好,所以不会监听到

 

3.Gradle的其他生命周期回调方法

Gradle 提供了很多生命周期回调方法,如下所示

//在project进行配置前调用,child project必须在root project中设置才会生效,
//root project必须
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值