2010-09-23 3 views
3

Я разрабатываю приложение, которое работает на платформах Android 1.5 и Andoroid 2.x. Когда я установить его на Android 2.2 все в порядке, но на эмуляторе с Android 1.5 Я получаю ошибку:Android: INSTALL_FAILED_DEXOPT во время установки приложения на android 1.5

Failure [INSTALL_FAILED_DEXOPT] 

Что проблема может быть?

UPD Это Logcat выход:

09-26 07:12:22.484: INFO/PackageManager(579): /data/app/vmdl23706.tmp changed; unpacking 
09-26 07:12:22.494: DEBUG/installd(557): DexInv: --- BEGIN '/data/app/vmdl23706.tmp' --- 
09-26 07:12:36.114: ERROR/dalvikvm(1362): LinearAlloc exceeded capacity, last=336 
09-26 07:12:36.114: ERROR/dalvikvm(1362): VM aborting 
09-26 07:12:36.265: INFO/DEBUG(551): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** 
09-26 07:12:36.265: INFO/DEBUG(551): Build fingerprint: 'generic/sdk/generic/:1.5/CUPCAKE/150240:eng/test-keys' 
09-26 07:12:36.265: INFO/DEBUG(551): pid: 1362, tid: 1362 >>> /system/bin/dexopt <<< 
09-26 07:12:36.265: INFO/DEBUG(551): signal 11 (SIGSEGV), fault addr deadd00d 

кажется, что память не хватает ... Если кто-нибудь знает, как бороться с такой проблемой? Я был бы очень благодарен за любую помощь.

+0

Возможно, проблема может быть связана с количеством классов/методов приложения. Я тоже поступил в другом посте: http://stackoverflow.com/a/25595353/2411379 –

ответ

5

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

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

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

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

0

У меня была эта проблема при попытке установить мое приложение на эмулятор. Что помогло сбросить эмулятор (стереть все пользовательские данные) с помощью AVD Manager. Посмотрим, как долго это продлится ....

Смежные вопросы