美文网首页
Gradle快速加载&统一组件版本

Gradle快速加载&统一组件版本

作者: 鸡蛋灌烧饼 | 来源:发表于2020-01-14 19:55 被阅读0次

一、统一组件版本

实际开发中会遇到一些依赖冲突,同一个依赖,版本不同也可能导致编译出错,所以下面说一下项目中如何统一各种版本

  • 项目根目录下创建一个配置文件取名为config.gradle(名字可以随意取),内容如下
    //控制版本
    ext {
      android = [
              //统一配置编译SDK版本
              compileSdkVersion: 28,
              //统一build tools 版本
              buildToolsVersion: "28.0.3",
              //统一最低支持版本
              minSdkVersion    : 16,
              //统一目标版本
              targetSdkVersion : 28,
      ]
      //统一各个组件版本
      dependencies = [
              constraint_layout : 'com.android.support.constraint:constraint-layout:1.1.3',
              recyclerview_v7: 'com.android.support:recyclerview-v7:28.0.0',
              appcompatV7: 'com.android.support:appcompat-v7:28.0.0',
              cardviewV7 : 'com.android.support:cardview-v7:28.0.0',
              supportV13 : 'com.android.support:support-v13:28.0.0',
              design     : 'com.android.support:design:28.0.0',
              multidex   : 'com.android.support:multidex:1.0.3',
              okhttp3    : 'com.squareup.okhttp3:okhttp:3.9.1'
      ]
    }
    
  • 项目跟目录下的build.gradle 头部添加引用
    //添加gradle
    apply from: "config.gradle"
    
  • 需要使用的module 中使用如下
    android {
        //设置compileSdkVersion 
        compileSdkVersion rootProject.ext.android.compileSdkVersion
        //设置buildToolsVersion 
        buildToolsVersion rootProject.ext.android.buildToolsVersion
    
        defaultConfig {
          minSdkVersion rootProject.ext.android.minSdkVersion
          targetSdkVersion rootProject.ext.android.targetSdkVersion
          versionCode 1
          versionName "1"
        }
    
        buildTypes {
            release {
              minifyEnabled false
              proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
            }
        }
    }
    dependencies {
      implementation fileTree(include: ['*.jar'], dir: 'libs')
      androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', {
          exclude group: 'com.android.support', module: 'support-annotations'
      })
      //添加V7依赖
      implementation rootProject.ext.dependencies.appcompatV7
      //添加约束布局
      implementation rootProject.ext.dependencies.constraint_layout
      //添加okhttp3
      implementation rootProject.ext.dependencies.okhttp3
    }
    

二、提高价值速度

现在如果没有梯子,有时候某些依赖无法下载导致编译失败耽误时间,阿里提供了一些依赖供广大开发者使用,感恩阿里。

阿里镜像地址:点击跳转

下面举个例子,添加jcenter镜像

  • 打开项目根目录下gradle文件,buildscript==>repositoriesallprojects==>repositoriesjcenter()后做出如下修改:
    buildscript {
        repositories {
          google()
          jcenter(){ url 'https://maven.aliyun.com/repository/jcenter' }
        }
        dependencies {
        ...
        }
    }
    
    allprojects {
      repositories {
          google()
          jcenter() { url 'https://maven.aliyun.com/repository/jcenter' }
      }
    }
    

相关文章

网友评论

      本文标题:Gradle快速加载&统一组件版本

      本文链接:https://www.haomeiwen.com/subject/apwaactx.html