LinearAlloc exceeded capacity (5242880), last=1092 Error while installing on my Samsung Tablet Device

二次信任 提交于 2019-11-30 01:45:48

问题


Am continuously getting, this errors in logcat

 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/data@app@com.check.careerbuilder-1.apk@classes.dex' res = 11
12-07 05:26:26.050: WARN/PackageManager(2494): Package couldn't be installed in /data/app/com.check.careerbuilder-1.apk

and While at Console

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

I tried, cleaning the project, restarting device, adb killing and starting server,

and I found WipeUserData to be checked , but how to wipeuserdata for realdevice?

How to resolve this issue and install my apk on samsung tablet?


回答1:


It's a limitation in Dalvik triggered on unusually complex interface hierarchies.

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

See the details for ideas on working around. Simple answer might be to try using different libraries that are less complex.

A fix has been merged into Android AOSP. https://android-review.googlesource.com/#/c/30900/




回答2:


One potential solution is to use Proguard to trim any unused method/classes from your app.

If you are using libraries this can quite significantly cut down the size of the app and the number of objects that need to be allocated thereby sidestepping the problem (at least up to a certain size app).



来源:https://stackoverflow.com/questions/8413898/linearalloc-exceeded-capacity-5242880-last-1092-error-while-installing-on-my

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!