Multiple dex files define Landroid/support/v4/accessibilityservice解决方法

1.问题背景

一般看到这问题,这个报错,一般人都不知道为何?
Error:Execution failed for task ‘:app:transformClassesWithDexForDebug’.

com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.dex.DexException: Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoVersionImpl;
一般如何解决呢,最懒得的方式,就是找一个android 6.0的手机,此版本的手机不受dex files重复影响;
问题的原因是,Multiple dex files define Landroid/support/v4/accessibilityservice
v4重复导致;

2.解决方法

首先,就是看一下,哪里引入了v4,简单粗暴的方法,删除一一个v4;
但是有时,不能这样,比如v7里有v4,删除v7,项目就爆错了;
正规流程,先找一下,哪里有重复的引用;

2.1 方法一、用gradle view看

从,file–setting–plugin,安装具体见图
这里写图片描述
这里写图片描述
查看时,从view–window tool—gradle view

2.2 方法二、gradle命令看依赖

在android studio的terminal中输入:(window环境)
gradlew :app:dependencies –configuration compile
看下面图样
这里写图片描述

大家看到,v7中有v4,我的module里,也引入了v4,老的v4;
这里解决也有2种方式;
第一种;删掉引的module里的老v4,jar包,在buil gradle里加入和v7同版本的依赖;
比如:工程里的为
compile ‘com.android.support:appcompat-v7:23.4.0’
你的module里也引入
compile ‘com.android.support:appcompat-v4:23.4.0’
第二种:直接在v7里加例外(推荐这个)
compile (‘com.android.support:appcompat-v7:23.4.0’) {
exclude module: ‘support-v4’
}
见图:
这里写图片描述

3.完毕

遇到问题,不要拍,总会解决,不是太难,是你太不自信而已;

4.其他方法

http://blog.csdn.net/u012214750/article/details/52692450

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不对法

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值