文章标题

在项目遇到了 64k 问题。编译时不能通过,

项目中引用的第三方较多,然后在编译,或者编译成功但是刚开始运行,就会闪退,会发现有问题是某个类或类的方法没有找到。

解决办法:在 build.gradle 添加了
defaultConfig {
multiDexEnabled true
}

dependencies {
  compile 'com.android.support:multidex:1.0.0'
}

如果项目有混淆的可以加上混淆

这样的话能够编译通过。但是会发现启动后会找不到有的方法,然后就会崩溃。在BaseApplication 中实现如下,就可以了

 @Override
    protected void attachBaseContext(Context base) {
        super.attachBaseContext(base);
        //for multiDex  64k
        MultiDex.install(this);
    }

Execution failed for task ‘:excelSior:packageAllDebugClassesForMultiDex’.

java.util.zip.ZipException: duplicate entry: android/support/annotations/colorRes

在build.gradle 文件中添加

configurations {
        all*.exclude group: 'com.android.support', module: 'support-annotations'
    }

Error:Execution failed for task ‘:app:transformClassesWithJarMergingForDebug’.com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/v4/internal/view/SupportSubMenu.class

 configurations {
                all*.exclude group: 'com.android.support', module: 'support-v4'
            }

如果遇到类似的问题, com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: 然后就可以使用

all*.exclude group: 'com.android.support', module: 相应的引用包
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值