gradle - 为不同的构建类型设置不同的versionName

时间:2016-05-16 04:42:34

标签: gradle android-gradle

我想使用不同的versionCodeversionName进行调试和发布构建,但我不知道如何实现这一点。我不想只添加后缀,我想生成两种构建类型之间完全不同的versionCode。具体来说,最好是我可以将versionCode分别设置为getDebugVersionCode()getReleaseVersionCode()以进行调试和发布构建。我怎样才能做到这一点?感谢。

2 个答案:

答案 0 :(得分:4)

您可以尝试使用here中的解决方案。

根据它,可以像这样更改versionNameversionCode

android {
  applicationVariants.all { variant ->     
    def flavor = variant.mergedFlavor      
    if (variant.buildType.isDebuggable()) {           
       //set properties for debug
       flavor.versionName = 'version-name-for-debug`;
       flavor.versionCode = 6;
    } else {
       //set properties for release
       flavor.versionName = 'version-name-for-relese`;
       flavor.versionCode = 8;
    }
  }
}

答案 1 :(得分:0)

我认为您正在寻找的解决方案是This

此外,这是我的gradle文件中的实现:

    android {
        applicationVariants.all { variant ->
            if (variant.buildType.isDebuggable()) {
                //set properties for debug
                variant.outputs.each { output ->
                    output.versionNameOverride = "DEBUG-VERSION";
                    output.versionCodeOverride = 1
                }
            }
        }
    }