Android studio里$rootProject的妙用

2019-10-15 18:19:09 浏览数 (1)

gradle统一入口版本管理的初衷是解决一个项目只要一个地方修改,各个有引用的模块便可以自动生效,从而达到了一个地方修改各个地方生效的好处,同时能保持gradle引用库版本的一致。使用方法如下:

1.首先在项目级别的build.gradle文件底部添加如下信息:

ext{

// Sdk and tools

minSdkVersion = 15

targetSdkVersion = 26

compileSdkVersion = 26

buildToolsVersion = '25.0.2'

// App dependencies

junitVersion = '4.12'

v7Version='26.1.0'

}

2、接下来就是在模块级别的build.gradle文件中引用,举例如下:

defaultConfig {

applicationId "com.guoqiang.androidmodule.common"

minSdkVersion rootProject.ext.minSdkVersion

}

dependencies {

implementation fileTree(dir: 'libs', include: ['*.jar'])

implementation "com.android.support:appcompat-v7:$rootProject.v7Version"

testImplementation "junit:junit:$rootProject.junitVersion"

}

通过以上两个步骤便可以完成版本的统一管理了。

使用过程中遇到的坑:

如果在dependencies中通过下面的引用方式就会报错,这里必须使用双引号"",使用单引号''就会报错,不知道gradle内部机制是怎么处理的,这里折腾了半天才知道是单引号引起的问题,使用过程中需要注意。

implementation 'com.android.support:appcompat-v7:$rootProject.v7Version'

0 人点赞