Android 配置gradle实现VersionCode自增

我是因为构建多渠道包的时候有这个需求,平常工作多个渠道包频繁的打包,总会忘记versioncode提高一下,从而打包出来的apk无法覆盖原先的安装包,这里只介绍了自增VersionCode,网上还有动态设置versionName,有需要也可以看看其他人的实现。以下介绍下配置Gradle自动增加versionCode的值

一、项目的根目录新建一个文件version.properties


二、文件内容写上初始的versioncode



三、主gradle配置

def getVersionCode() {
    def versionFile = file('version.properties')
    if (versionFile.canRead()) {
        def Properties versionProps = new Properties()
        versionProps.load(new FileInputStream(versionFile))
        def versionCode = versionProps['VERSION_CODE'].toInteger()
        def runTasks = gradle.startParameter.taskNames //仅在assembleRelease任务是增加版本号,其他渠道包在此分别配置
        if ('assembleInsectRelease' in runTasks) {
            versionProps['VERSION_CODE'] = (++versionCode).toString()
            versionProps.store(versionFile.newWriter(), null)
        }
        return versionCode
    } else {
        throw new GradleException("Could not find version.properties!")
    }
}
android {
    ....
}



只在release模式下才自增,保证测试的时候versionCode不增加


四、调用

def currentVersionCode = getVersionCode()

    defaultConfig {
        applicationId 'com.chongzzz.texas'
        minSdkVersion 15
        targetSdkVersion 25
        multiDexEnabled true
        versionCode currentVersionCode
        versionName "1.0.1.21"
}

end,新年第一篇文章,加油,


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值