能搜索到这里的也不需要知道为什么会报Dex65536错误了,下面单刀直入直接上解决办法:

原理其实就是将不重要的jar包集中用ant打包成一个jar包,再用SDK自带工具dx.bat去将这个jar包编译成classes2.dex文件,在APP启动后动态加载这个分包dex

一.首先准备apache-ant-1.10.1.zip工具,后面会提供用到的工具(需要配置ANT的环境变量,自行百度搜索如何配置)

二.编写build.xml配置文件,将所需要合并的jar包写到里面

Eclipse超详细解决安卓Dex65536报错,分包方法

三.在项目libs包下Shift+右键进入命令行,执行命令:ant -buildfile D:\workspace\Fcbroker\Fcbroker\libs\build.xml

Eclipse超详细解决安卓Dex65536报错,分包方法

执行成功后会生成合并后的all.jar

Eclipse超详细解决安卓Dex65536报错,分包方法

四.然后到安卓SDK build-tool工具里使用dk.bat将合成的jar包编译成classes2.dex文件

执行命令:dx --dex --output=D:\workspace\Fcbroker\Fcbroker\libs\ classes2.dex D:\workspace\Fcbroker\Fcbroker\libs\all.jar

Eclipse超详细解决安卓Dex65536报错,分包方法

执行成功后会在libs文件夹下生成classes2.dex文件

Eclipse超详细解决安卓Dex65536报错,分包方法

五.将classes2.dex文件放置在项目src路径下

Eclipse超详细解决安卓Dex65536报错,分包方法

六.导入multidex库到项目,后面会提供下载

Eclipse超详细解决安卓Dex65536报错,分包方法

七.在项目的BaseApplication类里重写attachBaseContext方法,执行分包

Eclipse超详细解决安卓Dex65536报错,分包方法

八.在Java Build Path里将所合成的包的对勾取消掉,因为这些包已经在classes2.dex存在,无需再次打包进dex

Eclipse超详细解决安卓Dex65536报错,分包方法

九.运行程序,查看分包结果,先将apk文件右键解压出来,可以看到已被分成了两个dex

Eclipse超详细解决安卓Dex65536报错,分包方法

使用dex方法获取工具,可以看到现在主dex方法数明显减少了

Eclipse超详细解决安卓Dex65536报错,分包方法


下载地址: 点击打开链接

上次忘记发分包库了,这次补发:

链接: https://pan.baidu.com/s/1i5EM34L 密码: gnk4

最后要说一个重点,在APP启动时就马上要加载的jar包千万别进行合并分包,不然会报类找不到的错误,当然这个错误在高级点的手机上没有出现

相关文章:

  • 2022-12-23
  • 2021-04-12
  • 2021-08-10
  • 2021-05-02
  • 2021-11-28
  • 2021-07-31
  • 2021-09-16
  • 2021-10-13
猜你喜欢
  • 2021-04-15
  • 2021-11-08
  • 2021-07-27
  • 2022-01-13
  • 2021-04-29
  • 2021-09-10
  • 2021-06-26
相关资源
相似解决方案