最近有朋友在问我,为什么我就加了一个类/一个库突然跑不起来了。
排查方式:
1、确认你的代码/引用没有问题
2、检查是否是65k问题
今天主要是解决 排查方式2的步骤,这个原因主要是因为你的apk包方法数过大。
现在解决这个已经很方便了:
方式一(繁琐):程序分包,这个比较繁琐;需要对jvm加载Class的方式有足够的了解
方式二(快速,使用AS):
1、使用google提供的分包库
implementation ‘com.android.support:multidex:1.0.2‘
implementation ‘com.android.support:multidex-instrumentation:1.0.2‘
2、在主项目的build.gradle文件里设置 multiDexEnabled true
3、如果项目有自定义的Application类,那就在它的onCreate方法里加入 MultiDex.install(this);
4、如果3不满足,你需要在主项目的manifest文件里添加application标签的name属性为:
android.support.multidex.MultiDexApplication
原文地址:http://blog.51cto.com/12539515/2104752
时间: 2024-10-12 13:34:53