android app 打包问题,jar文件的重复很头疼

生成key、混淆、多渠道打包、加固什么的都是android最终生成上线apk需要经历的几个过程

有没有遇到过这样的问题:

1、Execution failed for task ':app:transformClassesWithDexForDebug'.(跟在这个错误后面的问题会很多,如方法数溢出、jar包冲突)

2、Execution failed for task ':app:transformClassesWithJarMergingForDebug' > com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/v4/app/BackStackState$1.class

我在工程中引入IM(环信)、分享(umeng)这两个工程作为我创建工程的依赖,先是出现了第一个问题

然后谷歌出一堆解决方案,大概的意思就是说:你的文件方法太多了,超出了一个android工程的上线

下面是我粘贴的一个解决方案的答案,验证可行,如果你的使用这个方法不能解决问题,自己谷歌,不要怪我:

需要project的gradle中配置下面的代码,原因是引用了多个libraries文件

defaultConfig {

        multiDexEnabled true

}

紧接着就出现了第二个问题:大概的意思就是引入的jar文件重复了

如上面标红的部分,应该是这个方法,好像是v4中的文件,应该是v4包冲突了,

然后参考工程project目录下的“External libraries”目录中是不是是有多个v4包,如果多的,那就是啦,找到对应的工程

删除其中一两个吧(“External libraries”是引用目录不能直接删除,需要到对应的工程中去修改,删除),做法是,网上找的,

依赖两个或以上的项目,免不了有jar包冲突(support-v4support-v7等等)。

我的解决办法是(以support-v4为例),删除自己项目本身的support-v4,依赖包中的support-v4都替换成最高版本的support-v4


上面的两个问题就是最近解决的两个稍微棘手的问题,








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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值