原因分析
Android打包的DEX過程中贺喝, 單個DEX文件可被引用的方法總數(shù)被限制為65536寓涨, 當(dāng)應(yīng)用程序和庫引用達(dá)到一定規(guī)模,就會超過這個限制,這時就得分割Dex齐遵。
解決方案
添加依賴于build.gradle支持MultiDex庫
dependencies { ... compile 'com.Android.support:multidex:1.0.1' ... }
在buildType或productFlavor中開啟multiDexEnabled
defaultConfig { ... multiDexEnabled true ... }
添加Application支持
(1)如果你的Application繼承于Application類寂玲,讓它繼承 android.support.multidex.MultiDexApplication而不是android.app.Application
(2)如果你的Application繼承于第三方Application類,無法改變基類梗摇,那么可以重寫attachBaseContext()
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(this);