我已更新到Android Studio 2.2,它默认使用Gradle Plugin v2.2.0,并且更适合调试目的。出于分配目的,我仍然必须使用v2.1.3。我在考虑在项目gradle脚本中添加条件命令,但我不知道该怎么做。 以下测试工作
buildscript {
repositories {
jcenter()
}
dependencies {
if (project.name.startsWith("X"))
{
classpath 'com.android.tools.build:gradle:2.1.3'
}
else
{
classpath 'com.android.tools.build:gradle:2.2.0'
}
}
}
但我需要它像
buildscript {
repositories {
jcenter()
}
dependencies {
if (IS_RELEASE_VERSION)
{
classpath 'com.android.tools.build:gradle:2.1.3'
}
else
{
classpath 'com.android.tools.build:gradle:2.2.0'
}
}
}
我无法弄明白该怎么做。 提前致谢
答案 0 :(得分:6)
嗯,我相信我解决了它,而且非常简单。您需要检查gradle.startParameter.taskNames
属性。这是我编码的方式:
buildscript {
repositories {
jcenter()
}
dependencies {
if (gradle.startParameter.taskNames.size() > 0 && gradle.startParameter.taskNames.get(0).contains("Release"))
{
classpath 'com.android.tools.build:gradle:2.1.3'
}
else
{
classpath 'com.android.tools.build:gradle:2.2.0'
}
classpath 'com.google.gms:google-services:3.0.0'
}
}
到目前为止它工作正常。如果您愿意,可以更改"发布"值,一个风味变体(如果你正在使用风味)。