解决Android 应用方法数不能超过65K的问题
Posted claireyuancy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决Android 应用方法数不能超过65K的问题相关的知识,希望对你有一定的参考价值。
Conversion to Dalvik format failed:Unable toexecute dex: method ID not in [0, 0xffff]: 65536
假设你的应用出现这样的问题。那恭喜你,你的app内容已经许多了,也恭喜你遇到了这么一个坑爹的问题这个问题在许多地方都有解释假设解决,可是都很麻烦。我给个比較方便的
此处解说用的是android studio
首先配置build.gradle
android { compileSdkVersion 23 buildToolsVersion "23.0.1" defaultConfig { ... minSdkVersion 14 targetSdkVersion 23 ... // Enabling multidex support. multiDexEnabled true } dexOptions { javaMaxHeapSize "4g" } ... } dependencies { compile 'com.android.support:multidex:1.0.0' }
最后在application或者是你的AppContext 中增加初始化操作就能够了,也能够在onCreate里面运行。要放在super.onCreate(); 的前面。
<pre style="overflow: auto; margin-top: 20px; margin-bottom: 20px; padding: 15px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;"><span style="word-break: break-all; border-radius: 4px; background-image: none; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">public class AppContext extends Application { @Override protected void attachBaseContext(Context base) { super.attachBaseContext(base); MultiDex.install(this); } @Override public void onCreate() { super.onCreate(); } }</span>
假设你想知道你的应用如今究竟是有多少个方法了,能够使用例如以下方法
打开命令行
进入e盘的dex目录
然后输入例如以下命令java -jar dex-method-counts.jar navigation-debug-v1.00.30-2016-02-03.apk
回车之后会统计
工具包的下载地址:点击打开链接
http://download.csdn.net/detail/asd2603934/9432831
以上是关于解决Android 应用方法数不能超过65K的问题的主要内容,如果未能解决你的问题,请参考以下文章
Android 方法数 65k 限制与 LinearAlloc 限制
Android 65K问题之Multidex原理分析及NoClassDefFoundError的解决方法