Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> 解決Error:Android Dex

解決Error:Android Dex

編輯:關於Android編程

錯誤:Error:AndroidDex: com.Android.dex.DexIndexOverflowException: Cannot merge new index 65918 into a non-jumbo instruction!

如下圖:

\

直接原因是Java代碼太多,jar包太多。

谷歌官方文檔已經有解決方案:http://developer.android.com/intl/zh-cn/tools/building/multidex.html

點擊打開鏈接

 

eclipse的解決方案:在項目中的這個文件project.properties中添加一句話:dex.force.jumbo=true,如圖:

\

Android studio 解決方案,需要幾個步驟:

第一步,添加multiDexEnabled = true,如圖:

\

第二步,添加依賴於你的build.gradle支持MultiDex庫,如圖:

\

第三步分3個情況,

如果你沒有創建自己的Application 類,在你的清單文件AndroidManifest.xml中配置android.support.multidex.MultiDexApplication就可以了。

android:name="android.support.multidex.MultiDexApplication"

如果你有自己的Application類了,讓它繼承 android.support.multidex.MultiDexApplication而不是android.app.Application
如果你的Application繼承了其他的類,並且你不想改變或者沒辦法改變。按照下面的方法重寫attachBaseContext(),

@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(this);
}

 

如果沒有第二和第三步,可能有些手機運行時會報錯,如圖:

\

 

好了,重新編譯,可以通過了,又可以愉快的玩耍了……


  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved