Android studio gradle 版本统一管理配置

前言

随着项目的不断迭代更新,项目变的也越来越大,为了减少编译时间,开发效率,大多采用模块化,组件化开发,moudle 的个数也会随着增加,那么一些依赖或sdk版本升级的时候,每个 moudle 的 gradle 可能都需要修改一遍,统一管理配置就显得比较重要了。网上也给出了几种实现方式,这里只针对个人觉得比较好的方式做介绍。

一、配置

在 project 根目录建一个文件夹 config,里面创建一个 ****.gradle 文件,名称可以自定义,在这里是 config.gradle

ext {  
    // app 相关版本控制  
    versions = [  
            sdkMinVersion     : 15,  
            sdkTargetVersion  : 26,  
   
            sdkCompileVersion : 26,  
            toolsBuildVersion : "26.0.2",  
   
            appVersionCode    : 520,  
            appVersionName    : "1.0.0"  
    ]  
   
    // 依赖相关版本控制  
    depVersion = [  
            appCompatVersion : "26.+",  
            recyclerViewVersion : "26.0.0-alpha1"  
    ]  
   
    // 依赖  
    deps = [  
        suport : [  
                appcompat   : "com.android.support:appcompat-v7:${depVersion.appCompatVersion}",  
                recyclerview: "com.android.support:recyclerview-v7:${depVersion.recyclerViewVersion}"  
        ]  
    ]  
}  

二、调用

01、在 project 根目录下的 build.gradle 添加一行代码,注意没有这行代码,是不起作用的

apply from: 'config/config.gradle' 

02、在相应 moudle 中调用

android {  
    def versions = rootProject.ext.versions  
    compileSdkVersion versions.sdkCompileVersion  
    buildToolsVersion versions.toolsBuildVersion  
    defaultConfig {  
        applicationId "exrow.zp.zpexrow"  
        minSdkVersion versions.sdkMinVersion  
        targetSdkVersion versions.sdkTargetVersion  
        versionCode versions.appVersionCode  
        versionName versions.appVersionName  
    }  
    buildTypes {  
        release {  
            minifyEnabled false  
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'  
        }  
    }  
}  
  
dependencies {  
    def dependencies = rootProject.ext.deps  
  
    compile dependencies.suport.appcompat  
    compile dependencies.suport.recyclerview  
}

三、备注

gradle 中也会有其他相应的配置,其他配置与上面配置方式同理,可根据自身情况采用。

    原文作者:IT一书生
    原文地址: https://www.jianshu.com/p/9b732c56fa9b
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞