Android Studio更新导致Program type already present: android.support.design.widget.CoordinatorLayout$1

Android Studio 升级到3.1后,打包时会出现该错误。出现该错误的原因是各种support包相互冲突(design包版本冲突)。
网上少了一些方法,不过好像没啥用(可能大家引入的库不同,冲突不同吧),最后还是使用野路子解决的,在此记下一面日后再现。

网上方法

在我这没起到作用


  • 方法一

build.gradle中的所有 support依赖改为 27.1.1
implementation 'com.android.support:appcompat-v7:27.1.1'


  • 方法二

如果以上方法不行,在 dependencies{}完成后做相关配置
configurations {
   all*.exclude group: 'com.android.support', module: 'support-v13'
}

以上方法我都试过,没啥用,于是乎~~野路子来了

野路子

既然是design包版本冲突,那就将其统一!应该可以的!


  • 第一步

将所有 support包中的 design模块移除
implementation('com.android.support:appcompat-v7:27.1.0', {
    exclude group: 'com.android.support', module: 'design'
})
implementation('com.android.support:recyclerview-v7:27.1.0', {
    exclude group: 'com.android.support', module: 'design'
})
implementation('com.android.support:cardview-v7:27.1.0', {
    exclude group: 'com.android.support', module: 'design'
})
implementation('com.android.support:customtabs:27.1.0', {
    exclude group: 'com.android.support', module: 'design'
})


  • 第二步

统一 design包的版本,与以上 support包版本一致
implementation 'com.android.support:design:27.1.0'


  • 最后

SyncCleanBuild apk

打包成功啦!

目前项目里就是这么解决的!

你可能感兴趣的:(坑)