如何在每次获得发布包时自动增加Android Build Gradle文件中的版本号

推荐答案

您可以在version.properties文件中添加版本详细信息.但是,我建议您可以更新版本代码和版本号手册,因为每次构建它都会增加一次.还有一件事,如果你想发布一个重要的更新,那么你还需要手动更新.总而言之,手动更新版本对您的更新提供了更多的控制.

compileSdkVersion 25
buildToolsVersion "25.0.2"

def versionPropsFile = file('version.properties')

if (versionPropsFile.canRead()) {
    def Properties versionProps = new Properties()

    versionProps.load(new FileInputStream(versionPropsFile))
    def name = versionProps['VERSION_NAME']
    def code = versionProps['VERSION_CODE'].toInteger() + 1
    versionProps['VERSION_CODE']=code.toString()
    versionProps.store(versionPropsFile.newWriter(), null)

    defaultConfig {
        applicationId "com.bsupits.example.autoincrement"
        versionName name
        versionCode code
        minSdkVersion 15
        targetSdkVersion 25
    }
}
else {
    throw new GradleException("Could not read version.properties!")
}

Android相关问答推荐

Android Kotlin DSL Gradle找不到自定义存储库中的依赖项

如何将子零部件的大小调整为可以调整大小的父组件大小?

当X为lambda函数时,如何避免Android Studio错误检测参数X未使用?

Android 14无法删除已配置的文件

我如何剪裁一个可由另一个合成的

如何阻止Gradle在编译时生成app-metadata.properties

如何在初始合成期间在可组合函数中调用/获取远程API中的数据[防止无限重组]

Android布局渲染问题

Jetpack Compose中尺寸不断增加的动画

android crashlytics 显示崩溃但不显示我的课程中的位置

如何在 compose android中将图像覆盖在另一个图像上

Jetpack Compose的val变量不能被重新分配

在 Android Studio 中获取更新版本的 Picasso 库的错误警告消息

如何将一个没有 GRADLE 的古老 Android 项目导入到今天的 Android Studio 中?

在 Kotlin 中循环遍历字符串并用新行替换句号

将房间中的实体更新为 isCompleted 并使用 Flow 问题获取所有数据

Unity:Android 上随机接近零的 FPS 下降(提供了很多线索)

新安装 Expo Go 的 android 设备上的 sdk 46.0.0 (@snack/sdk.46.0.0) 出错

如何使用 recyclerview 实现这样的布局?

如何在 Jetpack Compose 中填充矢量图像的背景?