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

来源:互联网 发布:软件测试工程师职责 编辑:程序博客网 时间:2024/05/17 07:24

生成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 0
原创粉丝点击