Android 组件化实战一: Gradle基础语法
Android 组件化实战二: 项目部署
Android组件化实战三: 模块之间的交互
Android组件化实战四: APT的介绍与使用
Android组件化实战五: APT的高级用法JavaPoet
Android组件化实战六:路由架构设计
前言
Android 组件化系列文章旨在彻底掌握组件化的原理,从0到1搭建一个自定义的组件化框架。万丈高楼平地起,本文主要介绍组件化过程中项目部署涉及的Gradle基本语法。
打印信息
// 在app/build.gradle文件中
println("hello world!")
println"hello world!"
println'hello world!'
效果一样:hello world!
println 666
结果:666
变量的使用方式
在工程根目录新建文件gradle文件config.gradle,可以把公用的信息,可扩展的信息加入进来,放到ext代码块,自定义添加需要的内容。
// 添加多个自定义属性,可以通过ext代码块
ext{
username = "xpf"
}
要想在app/build.gradle中使用该信息,首先需要将该文件配置到项目工程,在根目录添加之后,就可以使用了
//根目录下的build.gradle头部加入自定义config.gradle,相当于layout布局中加入include语法
apply from: "config.gradle"
使用方式一:直接使用
//在app/build.gradle
println username//xpf
//正确语法:${rootProject.ext.username}
println "${rootProject.ext.username}"//xpf
rootProject.ext.username = 163 //糖果语法,弱类型语言Groovy ,这里给username重新赋值了
//简化语法:"${username}"
println "${username}"//163
println '${
username}'//'${
username}' 要注意单引号里面是什么内容打印的就是什么内容,最好统一用双引号""
使用方式二:定义变量
//在app/build.gradle
def name = rootProject.ext.username
println "name: " + name//name: xpf
rootProject.ext.username = 163 //糖果语法,弱类型,类型可以推倒
println username //163
println "name: " + name// name: xpf
其实在组件化开发中,多个子模块的build.gradle文件中具有很多相同的属性,因此可以抽取到config.build中,子模块进行引用。
//config.gradle文件中,添加多个自定义属性,可以通过ext代码块
ext {
//username = "xpf"
//生产开发环境
//false: 组件化模式,每个子模块都对应一个apk(也就是说有多个apk),可以独立运行,调试环境
//true:集成化模式,整个项目打包成一个(只有一个)apk,子模块不能独立运行,正式环境
isRelease = true
//建立Map存储,对象名、key都可以自定义,groovy糖果语法,非常灵活
androidId =