2011-12-07 17 views
11

Am continuamente ricevendo, questa errori di logcatLinearAlloc superato la capacità (5.242.880), ultimo = 1092 Errore durante l'installazione sul mio Samsung Tablet dispositivo

DexOpt: not resolving ambiguous class 'Lorg/apache/http/client/utils/URLEncodedUtils;' 
    12-07 05:26:01.085: ERROR/dalvikvm(4620): LinearAlloc exceeded capacity (5242880), last=1092 
    12-07 05:26:01.085: ERROR/dalvikvm(4620): VM aborting 
    12-07 05:26:01.187: INFO/DEBUG(2373): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** 
    12-07 05:26:01.187: INFO/DEBUG(2373): Build fingerprint: 'samsung/SGH-T849/SGH-T849/SGH-T849:2.2/FROYO/UVJJB:user/release-keys' 
    12-07 05:26:01.187: INFO/DEBUG(2373): pid: 4620, tid: 4620 >>> /system/bin/dexopt <<< 
    12-07 05:26:01.187: INFO/DEBUG(2373): signal 11 (SIGSEGV), fault addr deadd00d 
............etc 
12-07 05:26:01.347: INFO/dalvikvm(2494): threadid=3: reacting to signal 3 
12-07 05:26:01.358: INFO/dalvikvm(2494): Wrote stack traces to '/data/anr/traces.txt' 
12-07 05:26:01.551: INFO/dalvikvm(2578): threadid=3: reacting to signal 3 
12-07 05:26:02.866: ERROR/dalvikvm(4581): Failed to write stack traces to /data/anr/traces.txt (1370 of 2089): No such file or directory 
12-07 05:26:25.976: ERROR/installd(2383): dexopt failed on '/data/dalvik-cache/[email protected]@[email protected]' res = 11 
12-07 05:26:26.050: WARN/PackageManager(2494): Package couldn't be installed in /data/app/com.check.careerbuilder-1.apk 

E mentre al Console

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

ho provato, pulire il progetto, riavviare il dispositivo, uccidere adb e avviare il server,

e ho trovato WipeUserData da verificare, ma come wipeuserdata per realdevice?

Come risolvere questo problema e installare il mio apk su tablet Samsung?

+0

Questo dovrebbe risolvere il problema !!! [http://stackoverflow.com/a/13556519/2519412][1] [1]: http://stackoverflow.com/a/13556519/2519412 –

risposta

7

È un limite in Dalvik attivato su gerarchie di interfaccia insolitamente complesse.

http://code.google.com/p/android/issues/detail?id=22586

Vedi i dettagli per le idee su come lavorare intorno. Una risposta semplice potrebbe essere provare a utilizzare librerie diverse che sono meno complesse.

Una correzione è stata unita in Android AOSP. https://android-review.googlesource.com/#/c/30900/

+2

Qualcuno sa se ci sono soluzioni alternative a questo oltre a cambiare le librerie? –

+1

Sarei interessato anche a una soluzione – Goddchen

+0

Non ho un'app particolarmente complessa, ma sta utilizzando le librerie Play Services, support, appcompat e google-api-client e si sta verificando questo problema. C'è un modo per analizzare dove sono i principali colpevoli? Forse potrei quindi eliminarli o attenuarli. – William

0

Una possibile soluzione è quella di utilizzare Proguard per tagliare qualsiasi metodo/classi inutilizzate dalla tua app.

Se si utilizza librerie questo può abbastanza significativamente ridurre la dimensione delle app e il numero di oggetti che devono essere assegnati in tal modo aggirando il problema (almeno fino ad una certa applicazione dimensioni).