Android Studio中统一管理版本号引用配置(推荐)

ANDROID STUDIO中统一管理版本号引用配置

为了提高项目开发效率,在实际项目开发过程中往往会引入一些开源框架,还有项目中使用的各种Module,当引入Module过多时最好提供一种统一的方式去管理版本号,如:compileSdkVersion、buildToolsVersion、androidTestCompile 等,便于日后对版本号进行维护,此处记录第2种方式处理上述问题
1.在工程根目录下的build.gradle文件下添加 ext{ .... } 中的内容

// Top-level build file where you can add configuration options common to all sub-projects/modules.
//apply from:"config.gradle"/*引入配置文件:config.gradle*/
buildscript {
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.0'
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}
allprojects {
    repositories {
        google()
        jcenter()
    }
}
task clean(type: Delete) {
    delete rootProject.buildDir
}
ext {
    minSdkVersion = 15
    targetSdkVersion = 27
    compileSdkVersion = 27
    supportLibraryVersion = '27.+'
}
//或者使用下面的写法也是可以的
/*project.ext {
    minSdkVersion = 15
    targetSdkVersion = 27
    compileSdkVersion = 27
    supportLibraryVersion = '27.+'
}*/

2.在app目录下或者依赖的model目录下的build.gradle中使用 $rootProject.supportLibraryVersion

apply plugin: 'com.android.application'

android {

    compileSdkVersion rootProject.ext.compileSdkVersion

    defaultConfig {
        applicationId "com.example.think"
        minSdkVersion rootProject.ext.minSdkVersion
        targetSdkVersion rootProject.ext.targetSdkVersion
        versionCode rootProject.ext.versionCode
        versionName rootProject.ext.versionName
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'com.android.support.constraint:constraint-layout:1.0.2'
    implementation "com.android.support:appcompat-v7:$rootProject.supportLibraryVersion"
    implementation "com.android.support:cardview-v7:$rootProject.supportLibraryVersion"
    implementation "com.android.support:design:$rootProject.supportLibraryVersion"
}

3,进行同步的操作,即可引用成功,如果需要配置版本,我们只需在工程的根目录下的ext {}中进行响应的配置更改即可,这样整个工程中的所有model都会使用相同的版本.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,227评论 25 708
  • 说明 本文主要介绍和Gradle关系密切、相对不容易理解的配置,偏重概念介绍。部分内容是Android特有的(例如...
    jzj1993阅读 15,736评论 1 62
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,908评论 18 139
  • 方式一: 在gradle.properties中写入: #测试环境ENV_TEST=test#开发环境ENV_DE...
    flywfk阅读 2,414评论 2 1
  • 海与天,各自蔚蓝,彼此遥望,海倒映着天的色彩,天吸吮着海的水滴。仿佛永远分离,却又彼此相依…… ——题记 “你是什...
    燕语叮咛阅读 593评论 1 2