Android Studio 解决support 包冲突问题

Android Studio 通过gradle support 包 或者引入了 第三方的module  引入了其他的相同的suport 包但是版本不同造成版本冲突

Android Studio编译项目的时候就会报错 

All com.android.support libraries must use the exact same version specification (mixing versions can lead to runtime crashes

列一下解决方法

(1) 在Android Studio  命令工具栏 Terminal 中输入 gradlew -q app:dependencies 可以产看所有依赖库的版本,可以发现同一个依赖库有不同的版本 注意有的时候有的依赖库 就会包含 support v4 等包 这个时候就很容易造成 v4 包的版本冲突 

(2) 解决冲突 可以用排除法 在引入依赖库的时候就手动排除 support的包   

 

 api("com.afollestad.material-dialogs:core:0.9.5.0") {
        exclude group: 'com.android.support', module: 'support-v13'
        exclude group: 'com.android.support', module: 'support-vector-drawable'
    }

或者通过Grovvy脚本 修改冲突

   configurations.all {
            resolutionStrategy.force "com.android.support:support-v4:28.0.0"
        }

亲测有效  强制support 使用一个版本

还看到网上有这么写的 没具体试过 内容大同小异

 

 

通过Grovvy脚本修改版本号解决冲突
在其存在冲突的module中的build.gradle文件中加入下面代码,原理就是通过遍历所有依赖,并修改指定库的版本号

其中
requested.group == 'com.android.support' com.android.support表示要修改的依赖库

details.useVersion '28.0.0'    28.0.0表示要修改的版本号

configurations.all {
    resolutionStrategy.eachDependency { DependencyResolveDetails details ->
        def requested = details.requested
        if (requested.group == 'com.android.support') {
            if (!requested.name.startsWith("multidex")) {
                details.useVersion '28.0.0'
            }
        }
    }
}

原文链接:https://blog.csdn.net/yuzhiqiang_1993/article/details/78214812

 

 

如果你有时间 还是升级到Android X 吧 以绝后患

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值