公司項(xiàng)目在打包時(shí)遇到了傳說(shuō)中的65536問(wèn)題,如以下提示:
Conversion to Dalvik format failed:
Unable to execute dex: method ID not in [0, 0xffff]: 65536
在Android中,一個(gè)Dex中存儲(chǔ)方法id用的是short類(lèi)型數(shù)據(jù),所以我們的方法總數(shù)不能超過(guò)64K
解決方法:
第一步:修改主module中的build.gradle文件:
在android{}中的defaultConfig{}中加入這句:`multiDexEnabled true`
這里寫(xiě)圖片描述
并且依賴(lài)multidex:compile 'com.android.support:multidex:1.0.1'
第二步:修改Application的繼承關(guān)系:
讓我們的application繼承MultiDexApplication就好,或者重寫(xiě)attachBaseContext()方法,在該方法中調(diào)用MultiDex.install(this); 效果是一樣的,因?yàn)槔^承的這個(gè)類(lèi)中就是這么做的.
這里寫(xiě)圖片描述
如果你本身并沒(méi)有寫(xiě)application,還要記得在manifest中注冊(cè)下application,如果找不到MultiDexApplication這個(gè)類(lèi),請(qǐng)看看你是否有添加這個(gè)依賴(lài)!
本篇內(nèi)容參考了達(dá)哥的文章: http://blog.csdn.net/yanzhenjie1003/article/details/51818269