Ошибка [INSTALL_FAILED_DEXOPT]
Когда я загружаю свое приложение в виртуальное устройство, у меня проблема, как это исправить?
Виртуальное устройство: Nexus S, CPU: Intel Atom x86. Я использую Android Studio
Waiting for device.
Target device: emulator-5554
Uploading file
local path: D:\git\Genius\app\build\apk\app-debug-unaligned.apk
remote path: /data/local/tmp/com.vlad.genius.app
Installing com.vlad.genius.app
DEVICE SHELL COMMAND: pm install -r "/data/local/tmp/com.vlad.genius.app"
pkg: /data/local/tmp/com.vlad.genius.app
Failure [INSTALL_FAILED_DEXOPT]
Я запускаю виртуальное устройство с очисткой пользовательских данных, но это не помогает мне.
В Logcat я вижу эту строку:
05-04 16:44:49.940 1775-1775/? W/dalvikvm﹕ DexOptZ: zip archive '/data/app/com.vlad.genius.app-1.apk' does not include classes.dex
05-04 16:44:49.940 956-956/? W/installd﹕ DexInv: --- END '/data/app/com.vlad.genius.app-1.apk' --- status=0xff00, process failed
05-04 16:44:49.940 956-956/? E/installd﹕ dexopt failed on '/data/dalvik-cache/[email protected]@[email protected]' res = 65280
Ответы
Ответ 1
Наиболее распространенной причиной проблемы является ограничение на dex для Android. Существует два типа ограничений: сначала количество методов, которые у вас есть, и второй размер кеша (в прямом отношении)
Google документирует эту проблему здесь: http://code.google.com/p/android/issues/detail?id=22586
Итак, первым вопросом будет какая версия Android, которую вы пытаетесь установить. Затем используйте инструмент dexdump (в build-tool в SDK android SDK) и узнайте количество методов, которые у вас есть.