You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为单模块Google即时应用设置与可安装版不同的versionCode?

单模块即时应用与可安装应用versionCode差异化配置方案

不用创建不同的应用包(productFlavors),直接通过Gradle配置为即时应用和可安装应用设置独立的versionCode,具体实现如下:

核心思路

Google Play允许同一包名下,即时应用与可安装应用拥有各自独立的versionCode序列,只要各自版本号不重复即可。我们可以通过Gradle的变体配置,针对即时应用构建单独覆盖versionCode,无需拆分包名。

具体Gradle配置

在app模块的build.gradle(或build.gradle.kts)中添加以下配置:

Groovy版本

android {
    defaultConfig {
        // 可安装应用的基础versionCode
        versionCode 100
        versionName "1.0.0"
        // 其他默认配置...
    }

    // 针对即时应用变体单独设置versionCode
    instantApp {
        // 可设置为与可安装版不重叠的数值,比如基础版+100
        versionCode defaultConfig.versionCode + 100
    }
}

Kotlin DSL版本

android {
    defaultConfig {
        versionCode = 100
        versionName = "1.0.0"
        // 其他默认配置...
    }

    instantApp {
        versionCode.set(defaultConfig.versionCode.get() + 100)
    }
}

补充说明

  • 构建时,Android Studio会自动生成两个版本的安装包:可安装应用使用defaultConfig中的versionCode,即时应用使用instantApp块中设置的versionCode。
  • 如果使用App Bundle(AAB),同一个AAB可以包含两种版本的内容,Google Play会自动拆分分发,versionCode的配置逻辑保持不变。
  • 上传到Google Play时,分别提交对应版本的包即可,两者的versionCode无需关联,只要各自的版本号递增即可。

内容的提问来源于stack exchange,提问作者StefanMK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 18:22:14