Skip to the content.

Android使用Gradle统一配置依赖版本

在Android开发中我们常常的会运用到模块化、组件化的开发方式,同时我们可以能会用到多个的Lib,但是有可能我们每个人使用的版本不一致,导致编译时间过长,我们现在开发中都是使用Gradle来依赖管理,那我们是否可以统一我们的版本,提高效率呢?

在我们以前直接的引用 appcompat-v7

   implementation 'com.android.support:appcompat-v7:26.1.0'

如果v7升级,同时我们的几个module都使用到这个包的话,我们这个module都需要去修改,这个是不是太麻烦了,而且还容易遗漏,不想偷懒的程序员不是好的程序员。

统一管理实现

apply plugin: 'com.android.library'

def config = rootProject.ext.android
def librarys = rootProject.ext.dependencies
android {
    compileSdkVersion config["compileSdkVersion"]

    defaultConfig {
        minSdkVersion config["minSdkVersion"]
        targetSdkVersion config["targetSdkVersion"]
        versionCode config["versionCode"]
        versionName config["versionName"]
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation librarys.appcompatV7
    testImplementation librarys.junit
    androidTestImplementation librarys.runner
    androidTestImplementation librarys.espresso
}

这样就是OK的了,所以的配置版本的信息都在config.gradle 进行统一管理是不是方便多了;