在使用as打包过程中,很可能添加一个三方库,再次构建项目,报版本冲突,我们需要改动gradle文件,将依赖版本统一,这样会避免不少麻烦.

首先,在项目project下创建新文件: dependency.gradle,与setting.gradle是同级的,里面定义的是一些版本信息,如:

 dependency.gradle:

ext.versions = [        compileSdkVersion : 25,        minSdkVersion : 16,        targetSdkVersion : 22,        versionCode : 107,        versionName : '1.0.7',        supportLibVersion : "25.0.0"]

在app的build.gradle文件顶部,引入统一版本依赖:

apply from: '../dependencies.gradle'apply plugin: 'com.android.application'android {    signingConfigs {        release {            ...        }        debug {            ...        }    }    compileSdkVersion versions.compileSdkVersion    defaultConfig {        ...        minSdkVersion versions.minSdkVersion        targetSdkVersion versions.targetSdkVersion        versionCode versions.versionCode        versionName versions.versionName        ...    }    buildTypes {        debug {            ...        }        release {            ...        }    }    ...}dependencies {    implementation fileTree(include: ['*.jar'], dir: 'libs')    implementation 'com.android.support:appcompat-v7:' + versions.supportLibVersion    implementation 'org.greenrobot:eventbus:3.0.0'    ...}

ps:我使用的gradle版本4.4,android plugin version为3.1.2, 会自动选取buildToolsVersion,在app的build.gradle文件中,已经不需要添加了.

同样的,在依赖的三方库中的build.gradle文件,使用方法相同,都是先apply from: '../dependencies.gradle'

然后直接使用版本信息,

implementation 'com.android.support:appcompat-v7:' + versions.supportLibVersion

这里需要注意的是,将项目的app和所有依赖的三方库,能统一版本的,全部统一,这样就不会再有构建时依赖版本冲突,

而且便于统一设置管理版本信息.




更多相关文章

  1. 没有一行代码,「2020 新冠肺炎记忆」这个项目却登上了 GitHub 中
  2. 一款常用的 Squid 日志分析工具
  3. GitHub 标星 8K+!一款开源替代 ls 的工具你值得拥有!
  4. RHEL 6 下 DHCP+TFTP+FTP+PXE+Kickstart 实现无人值守安装
  5. Linux 环境下实战 Rsync 备份工具及配置 rsync+inotify 实时同步
  6. 不吹不黑!GitHub 上帮助人们学习编码的 12 个资源,错过血亏...
  7. 关于GitHub安装路径及Android(安卓)Studio中的配置
  8. [Android初级]关于Android使用Proguard混淆打包的那些事
  9. 深入了解Android中文件路径问题

随机推荐

  1. android前端与java web后台的ssl交互
  2. Android(安卓)ProGuard压缩,优化,混淆使用
  3. Android判断ListView滚动到最顶部第0条it
  4. Android(安卓)启动画面 SplashScreen
  5. Android应用实例之----基于Service与Cont
  6. Android(安卓)Permission大全
  7. android notification
  8. 第2课第1节_Android灯光系统_led_class驱
  9. Android(安卓)Gradle
  10. 如何使用android SDK帮助文档