天天看點

解決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>
           

如果你想知道你的應用現在到底是有多少個方法了,可以使用如下方法

解決Android 應用方法數不能超過65K的問題
解決Android 應用方法數不能超過65K的問題

打開指令行

進入e盤的dex檔案夾

然後輸入如下指令java -jar dex-method-counts.jar navigation-debug-v1.00.30-2016-02-03.apk

解決Android 應用方法數不能超過65K的問題
解決Android 應用方法數不能超過65K的問題

回車之後會統計

解決Android 應用方法數不能超過65K的問題
解決Android 應用方法數不能超過65K的問題

工具包的下載下傳位址:點選打開連結

http://download.csdn.net/detail/asd2603934/9432831