LinearAlloc превысила емкость (5242880), last = 1092 Ошибка при установке на моем планшетном устройстве Samsung

Постоянное получение, это ошибки в 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/[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

и пока на консоли

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

Я пробовал, очищал проект, перезагружал устройство, убивал и запускал сервер,

и я нашел WipeUserData для проверки, но как wipeuserdata для realdevice?

Как решить эту проблему и установить apk на планшет Samsung?

Ответ 1

Это ограничение в Dalvik вызвало необычно сложные иерархии интерфейсов.

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

См. подробности для идей по работе. Простой ответ может заключаться в том, чтобы попытаться использовать различные менее сложные библиотеки.

Исправление было объединено с Android AOSP. https://android-review.googlesource.com/#/c/30900/

Ответ 2

Одним из возможных решений является использование Proguard для обрезки любых неиспользуемых методов/классов из вашего приложения.

Если вы используете библиотеки, это может значительно сократить размер приложения и количество объектов, которые необходимо выделить, тем самым обойти проблему (по крайней мере, до определенного размера).