Gradle插件3.0重写versionName

Bao*_* Le 5 android gradle build.gradle android-gradle-plugin

我迁移到Android studio 3并使用gradle插件v3.0.0-beta6.我想重写输出.apk文件的versionName/vesionCode.我在Android应用模块的build.gradle中使用了以下代码来获取gradle插件2.x.

applicationVariants.all { variant ->
    def flavor = variant.mergedFlavor

    flavor.versionName="${VERSION_NAME}"
    if (variant.buildType.isDebuggable()) {
        flavor.versionCode=9999
    } else {
        flavor.versionCode=Integer.parseInt(gitCommitCount)
    }
}
Run Code Online (Sandbox Code Playgroud)

它不适用于gradle插件v3.0.0-beta6.对于versionCode,我使用此Gradle 3.0.0 alpha变体输出问题中的解决方案成功重写了它

小智 5

您可以使用ApkVariantOutput.setVersionCodeOverride方法。就像下面这样:

applicationVariants.all { variant ->
    if (variant.buildType.name == "release") {
        variant.outputs.all {
            setVersionCodeOverride(project.VERSION_CODE.toInteger())
            setVersionNameOverride(project.VERSION_NAME)
        }
    }
}
Run Code Online (Sandbox Code Playgroud)