Android Gradle构建流程浅析

本文浅析Android Gradle构建流程,包括项目结构分析、构建生命周期的初始化、配置和执行阶段,以及生命周期监听。Gradle作为Android Studio的构建工具,通过配置脚本管理Project对象,构建有向无环图TaskExecutionGraph并执行Task。
摘要由CSDN通过智能技术生成

概述

Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,目前也增加了基于Kotlin语言的kotlin-based DSL,抛弃了基于XML的各种繁琐配置。它通过组织执行一系列的Task来完成自动化的构建,减少构建项目时的复杂度,而Android Studio也使用Gradle作为基础的构建工具。

Gradle 项目结构分析

在了解Gradle build的生命周期之前,先简单说一下Gradle的项目层次,新建一个Android工程,可以看到项目的结构大致如下
Android项目结构
Gradle的实质是配置脚本,执行一种类型的配置脚本时就会创建一个关联的对象,譬如执行build.gradle脚本就会创建一个Project对象,这个对象其实就是Gradle的代理对象

settings.gradle

settings.gradle是用于配置整个项目结构的脚本,对应Gradle中的Settings对象,其中最常用的几个方法:

include ':app'
project(':app').projectDir = new File("./...") // 可以指定子模块的目录位置
rootProject/build.gradle

位于项目根目录的build.gradle脚本,负责项目整体的配置,对应一个Project对象,其中最常用的几个方法

buildscript {
    // 配置构建脚本
    repositories {
    // 构建脚本的仓库
        google()
        jcenter()
    }
    dependencies {
    // 构建脚本的依赖,默认依赖Android Gradle Plugin,也可以添加自定义的Plugin
        classpath "com.android.tools.build:gradle:3.6.0"
    }
}
allprojects {
   
    repositories {
   
        google()
        jcenter()
    }
}

mudule/build.gradle

位于子模块的build.gradle脚本,负责这个模块的配置,也对应一个Project对象,类似根目录的build.gradle。

// 引入Android Gradle Plugin,如果是library,引入'com.android.library'</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值