Android 避免代码重复-如何在gradle中创建函数(并调用它们)?
我在互联网上花了几分钟寻找如何创建函数并在Android 避免代码重复-如何在gradle中创建函数(并调用它们)?,android,function,gradle,build,call,Android,Function,Gradle,Build,Call,我在互联网上花了几分钟寻找如何创建函数并在build.gradle中调用它们,但没有成功。因为我什么也没找到,所以我不确定我是否在搜索正确的概念关键词,或者这是否可能 我有两种构建类型: release { } debug { } 我想在它们内部调用下面的snippet(),而不复制它,或者换句话说,创建一个函数: def propsFile = rootProject.file('properties') def M_PROP = "mProp"
build.gradle
中调用它们,但没有成功。因为我什么也没找到,所以我不确定我是否在搜索正确的概念关键词,或者这是否可能
我有两种构建类型
:
release {
}
debug {
}
我想在它们内部调用下面的snippet()
,而不复制它,或者换句话说,创建一个函数:
def propsFile = rootProject.file('properties')
def M_PROP = "mProp"
if (propsFile.exists()) {
//Math
}
生成如下内容:
buildTypes {
release {
snippet()
}
}
debug {
snippet()
}
}
这可能吗?我怎样才能做到这一点呢?也许你愿意
buildTypes {
[release, debug].each { buildType ->
if (foo) {
buildType.doStuff()
}
}
}
或许
ext.snippet = { buildType ->
if (foo) {
buildType.doStuff()
}
}
buildTypes {
snippet(release)
snippet(debug)
}
注意:groovy中也有这个方法
buildType.doStuff1()
buildType.doStuff2()
buildType.doStuff3()
可以写成
buildType.with {
doStuff1()
doStuff2()
doStuff3()
}
这是否有助于: