欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Gradle配置全局变量

程序员文章站 2024-01-21 22:37:16
...

为了方便在不同的module中设置版本号等配置信息,我们可以通过配置全局变量来统一管理所有module的公共配置信息。配置方法有以下几种。

1、创建一个gradle文件来统一管理版本号信息

1)新建一个gradle文件,可以在项目的跟目录下创建(如config.gradle),也可以在具体某个目录下(如根目录下的buildsystem/config.gradle)

ext {
    buildInfo = [
            version_code: 3,
            version_name: "3.0.0"
    ]
    android = [
            minSdkVersion   : 19,
            targetSdkVersion: 28
    ]
}

2)在根目录下的build.gradle文件中导入

如果是在根目录下创建的

apply from: 'config.gradle'

如果是在根目录下的其他目录下创建的

apply from: 'buildsystem/config.gradle'

3)在module的build.gradle文件中使用

defaultConfig {
        minSdkVersion rootProject.ext.android.minSdkVersion
        targetSdkVersion rootProject.ext.android.targetSdkVersion
        versionCode rootProject.ext.buildInfo.version_code
        versionName rootProject.ext.buildInfo.version_name
}

2、在gradle.properties文件中配置

1)在gradle.properties文件中配置变量

version_code=1
version_name=1.0.0

2)在module的build.gradle文件中使用

    defaultConfig {
        versionCode Integer.parseInt(version_code)
        versionName version_name
    }

需要注意的是在gradle.properties文件中定义的变量都是string类型的,当需要用到Integer变量时,需要在使用的地方用Integer.parseInt()进行转换。

3、在settings.gradle中加入全局变量作为配置

1)在settings.gradle中加入全局变量

gradle.ext.version_code=4
gradle.ext.version_name="4.0.0"

2)在module下的build.gradle文件中使用

    defaultConfig {
        versionCode gradle.version_code
        versionName gradle.version_name
    }