2013-07-26 77 views
5

我用的是最新adt-bundle-windows-x86_64-20130717,與無法安裝應用到模擬器2.3.3:INSTALL_FAILED_DEXOPT

  • Android SDK工具 - 22.0.4
  • 的Android SDK平臺的工具 - 18

我曾嘗試在仿真器2.3.3上安裝應用程序,包括ARM和Intel。但是,它不再工作(它曾經在我的Win64中相同的機器工作我使用最新的ADT之前)

Installation error: INSTALL_FAILED_DEXOPT 
Please check logcat output for more details. 
Launch canceled! 

我的仿真器設置如下。

enter image description here

我曾跟隨how to solve INSTALL_FAILED_DEXOPT this error?。這對我的情況沒有幫助。

請注意,4.1.2的模擬器對於英特爾來說工作得非常好。我甚至嘗試給APK發送電子郵件,並下載 - >從模擬器安裝。但是,這是我收到Application not installed

enter image description here

任何變通方法來解決這個問題?

我logcat的是有這樣的記錄

E/PackageManager(855): Package org.yccheok.jstock.gui has mismatched uid: 10031 on disk, 10033 in settings 
E/dalvikvm(1241): LinearAlloc exceeded capacity (5242880), last=468 
E/dalvikvm(1241): VM aborting 
E/installd(798): dexopt failed on '/data/dalvik-cache/[email protected]@[email protected]' res = 11 

注意,不會出現問題,如果我使用仿真器4.1.2

+0

'logcat'說什麼? – Vikram

+0

不是。我接受它,因爲我看到它可能對別人有幫助。但不是我。我最終使用Android Studio的模擬器。不方便,因爲我的項目在Eclipse中。 –

回答

0

這是非常很難從您提供的信息中找出錯誤。

與不同價值觀

不同模擬器嘗試以下

祝你好運!

1

嘗試重新安裝之前卸載你的應用程序。它似乎已經根據this

2

解決了一些問題,大部分時間與LinearAlloc的過多值有關。爲logcat放置詳細模式可以給你更多的細節(甚至可以指出問題)。

我聽說沒有確定的修復。有時它可以通過擦除AVD來修復,有些通過增加SD卡來修復,有些必須重新創建新的AVD,有些通過重新安裝ADT來修復,還有很多人會說修復,答案可以隨實際問題而變化。

有時問題可能是損壞的文件,或應用程序安裝條目,這使得Android不知道應用程序是否安裝。或者通過使用複雜的庫,甚至是編譯器本身的問題。

谷歌對這個錯誤沒有太多明確的信息,他們說這與Android OS中的一個錯誤有關,在某些情況下它不會釋放文件句柄。然而,當看着logcat它總是連接到一些dex文件。以及DDMS和編譯器。

我建議你去嘗試我所陳述的修復,還指給定鏈路

Issue 22586: Dexopt fails with "LinearAlloc exceeded" for deep interface hierarchies

Cleanup redundant interfaces from iftable to avoid excessive LinearAlloc use

Issue 42538: INSTALL_FAILED_DEXOPT solved by dex.disable.merger=true


如果一切都失敗了,請把你的詳細logcat的

1

升級ADT後,我面臨同樣的問題,我被困在這個問題幾乎一半一天。每個HIT和TRY方法後,找到了解決方案。

**

ONE庫項目構建目標,高等當時我的項目,JUST CHANGED庫項目構建目標3.0和我的項目BUILD 目標4.0.3,它消失了。

**

剛剛發佈我的解決辦法,如果有幫助別人的未來。

+1

感謝您的建議(沒有幫助我,但導致解決方案)。 我必須UNCHECK PRE-DEX EXTERNAL JARS ... DEPENDENCIES。 我使用IntelliJ Idea,如果你也陌生 - 去項目結構 - 模塊 - 包裝 – djdance