gradle 脚本作为 AndroidStudio 使用的打包控制语言,有其独特的优势。
常见功能
和其他脚本语言一样,gradle 脚本也支持实现常见的功能和操作
def 定义变量和方法
def getConfigs(environment,fileName) {
//断言变量不为空
assert environment!=null
assert fileName!=null
Properties props = new Properties()
//加载文件内容为 Properties,方便使用
props.load(new FileInputStream(file("conf/$environment/$fileName")))
return props
}
${} 引用变量
ext 暴露变量(或方法)
引入其他脚本文件
apply from: "${rootProject.projectDir}/dependency/dependency.gradle"
productFlavors 指定打包风味
productFlavors 下可以新增 flavor ,每个 flavor 都可以覆盖defaultConfig下的属性实现差异化。如:包名、应用名、编译版本;
flavor 里也可以执行脚本代码,实现特殊逻辑。
productFlavors.all 的代码所有 flavor 都会执行
productFlavors.all{
flavor ->
……
}
buil