Android 解决Eclipse 方法超过65535问题

现在大部分开发应该都采用Android Studio工具做开发,但是也不乏有些比较苦逼的开发继续采用Eclipse做开发。

最近在和一个合作伙伴做API接口联调的时候,对方告诉我他们的游戏架构比较老旧目前依旧采用Eclipse做Android开发,所以我这边需要提供Eclipse版本的Android资源包。

好吧开始转入Eclipse,发现方法太多报错了,超过65535,这边只好对对jar做合并分包成classes.dex。

首先电脑安装ant,并创建build.xml文件内容如下所示

<?xml version="1.0" encoding="utf-8"?>

<project name="libs" basedir="/Users/xx/Desktop/sdkjar" default="makeSuperJar">

    <target name="makeSuperJar"  description="description">

        <jar destfile="/Users/xx/Desktop/sdkjar/all.jar">

            <zipfileset src="CustomService_1.2.3.jar"/>

            <zipfileset src="okhttp-3.12.1.jar"/>

            <zipfileset src="okio-1.15.0.jar"/>

        </jar>

    </target>

</project>

basedir="/Users/xx/Desktop/sdkjar"为jar包所在的路径。

destfile="/Users/xx/Desktop/sdkjar/all.jar"为合成后jar包的路径。

<zipfileset src="okhttp-3.12.1.jar"/>为参与合并jar包的资源

进入到build.xml文件所在的目录执行,ant -buildfile build.xml   命令即可实现对jar包的合并。

合并jar包后,需要采用 dx --dex --output=classes.dex(生成dex的路径和名称)  source.jar(需要合并的jar包路径)

这样就完成了classes.dex文件的生成,为了使用这个dex,需要重命名为classes2.dex然后放到项目的src目录下即可完成编译。

这样就完成了通过分包classes.dex、classes2.dex ....等多个不同的dex文件解决了65535的问题。

除了上述操作还需要在项目的application attachBaseContext中添加 MultiDex.install(this);调用

@Override
  protected void attachBaseContext(Context base) {
        super.attachBaseContext(base);
        MultiDex.install(this);
    }

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值