Ошибка при установке приложения (INSTALL_FAILED_DEXOPT)
Я работаю с API ccr4j в Android, поэтому, когда я запускаю свой проект, он выдает ошибку вроде:
Ошибка при установке приложения (INSTALL_FAILED_DEXOPT)
Я нахожу из сети и того же сайта, все пытались, как,
1. Удалите то же самое приложение с устройства.
2. Запустите эмулятор с Wipe User Data.
Но все же ошибка приходит.
Так кто-нибудь знает, почему его выбросили такого рода ошибки?
2 ответа
Скорее всего, это связано с размером classes.dex. На любом pre-ICS dexopt потерпит неудачу на чем-то более 5 Мб. Проверьте размер файла classes.dex в вашем apk. Также было бы хорошо посмотреть, каков ваш счетчик методов, так как dex имеет 65536 предел метода / поля.
У меня такая же проблема. Проверил файл classes.dex и он составляет около 7 МБ. Я постараюсь найти решение. Я надеюсь, что решение Facebook тоже решит мое.
Кстати, спасибо за информацию @Jared.
https://www.facebook.com/notes/facebook-engineering/under-the-hood-dalvik-patch-for-facebook-for-android/10151345597798920
Изменить 1: я решил эту проблему с помощью оптимизации Proguard. Мой предыдущий файл Class.dex был около 7 МБ, а после оптимизации Proguard он стал 4 МБ. И теперь я могу запустить этот запутанный и оптимизированный apk на устройствах 2.2 и 2.3.
Изменить 2: Официальная поддержка Google Multi Dex является лучшим решением для этой проблемы. https://developer.android.com/tools/building/multidex.html
Найдите папку Android SDK. (ОбычноC:\User\AppData\Local\Android\sdk
) Удалите папки, которые начинаются с точки (.), Это временные файлы для загрузки. Затем удалите Android Emulator из SDK Manager. Затем запустите Android Studio от имени администратора, а затем снова загрузите и установите Android Emulator. И убедитесь, что вы установилиIntel H.A.X.M.
. Теперь вы можете создать эмулятор и использовать его без ошибок.