美文网首页
安卓Jar包冲突解决方案

安卓Jar包冲突解决方案

作者: PenguinMan | 来源:发表于2019-07-17 17:04 被阅读0次

前言

在安卓项目开发过程中,我们免不了会接触三方SDK的引用开发,比较常见的SDK有基于地图的高德地图SDK,基于社会化分享的友盟统计SDK,以及基于Bug日志获取的腾讯Bugly SDK等。由于不同的SDK开发方不同,所以经常性的会引入Jar包冲突无法打包的问题,如果是三方SDK引用了本地已经使用的Jar包,我们将冲突的Jar删除即可,如果是两个三方SDK引用了相同Jar包,我们则需要对SDK进行一些特殊处理。

打包异常

zipException.png

如图所示,在工程进行APK打包的时候报了一个ZipException,出现这个异常的原因在于两个Jar包中使用了想同包名相同类名的文件,导致程序不知道该使用哪一个类文件。


冲突Jar包(1).png
冲突Jar包(2).png

解决方案

当两个三方SDK使用相同包名相同类名的文件时,我们需要手动解决这个冲突,具体实现方法为将Jar包重命名为zip文件并解压。


重命名zip.png

找到对应冲突的文件,删除冲突的文件,保证两个Jar包中相同包名与相同类名的文件只能存在一个,删除冲突文件后,对文件进行重新打包。
使用cmd进入文件路径:


cmd指令.png
jar cvf after_delete.jar .
打包Jar包.png

命令执行完成,在执行目录会发现手动解决冲突的Jar包,使用新Jar包重新打包即可解决打包冲突问题。

相关文章

  • 安卓Jar包冲突解决方案

    前言 在安卓项目开发过程中,我们免不了会接触三方SDK的引用开发,比较常见的SDK有基于地图的高德地图SDK,基于...

  • 安卓jar包冲突解决

    在项目中尤其是大项目中,经常会引用很多第三发jar,或者lib,就难免出现jar包冲突的现象,一般冲突都会很详细的...

  • 安卓jar包冲突问题

    前段时间Flutter集成高德的导航功能的时候,开始是使用的插件flutter_amap_plugin,但是发现它...

  • 网易云短信android接入

    想要在安卓中使用HttpClient.jar包,记得不要用外部jar包,安卓自己有,如果用外部的话会产生错误。 想...

  • Es的jar以及环境安装以及错误

    1:jar包冲突 jar包冲突:jruby-complete 与 joda-time jar 包冲突。两者中都有o...

  • ReactNative开发之IDE

    Atrom Android Stuido 使用安卓模拟器弹出功能菜单 引入jar包 1、将jar包放入项目里的li...

  • 【资源汇总】Android应用解决方案全攻略

    安卓广告联盟解决方案: 安卓消息推送解决方案: 安卓应用安全解决方案: 安卓统计分析解决方案: 安卓后端存储解决方...

  • 编译生成jar包时,jdk版本兼容问题

    问题 需要生成jar包,提供给安卓编译使用,但是使用的安卓编译工具(buildTools)较低(小于19),不支持...

  • 关于stub、@hide那点事儿

    stub包 若干年前,我用eclipse开发安卓,反编译jar的时候发现android.jar内部的东西,所有方法...

  • Dalvik ClassLoader源码分析

    安卓源码jar外层包分为两个,一个是android,一个是dalvik。可以打开安卓项目Project下面Exte...

网友评论

      本文标题:安卓Jar包冲突解决方案

      本文链接:https://www.haomeiwen.com/subject/frhclctx.html