我正在使用Android 2.2开发一个Android应用程序,我的应用程序APK大小是22.5 MB,我想为三星平板电脑创建一个新的构建。我得到了以下错误:
INSTALL_FAILED_DEXOPT
如何解决这种错误?
我正在使用Android 2.2开发一个Android应用程序,我的应用程序APK大小是22.5 MB,我想为三星平板电脑创建一个新的构建。我得到了以下错误:
INSTALL_FAILED_DEXOPT
如何解决这种错误?
当前回答
因为这似乎是我自己遇到过多次的问题,这次没有一个分享的解决方案对我有帮助,我仍然会发布一些对我个人有帮助的东西,以及我认为将来可能会帮助其他人的东西:
进入项目目录,找到build/intermediates/dex-cache/cache文件。删除它——顾名思义,这是一个缓存的dex文件,如果你改变了项目的依赖关系,构建工具版本等,它可能已经过时了。
其他回答
如果你使用Android Studio,尝试清理你的项目:
建立>清洁项目
没有通用的解决方案,你必须找到你的Logcat上报告的错误,才能解决它。有时它是一个不能被“解码器”的类,因为它使用了一个在指定的目标API上不可用的类。或者它可能是一个你在代码中引用的类,但是它所在的库没有被打包。
我遇到过这个问题,因为我使用的库有一些不匹配
通过更新android sdk到最新解决。检查SDK管理器,如果它显示更新,然后完全更新,清理你的项目,然后运行,它会工作:)
从Android SDK和AVD管理器重新启动模拟器,并选择选项擦除用户数据已经为我解决了这个问题。
你可以在下图中找到高亮显示的选项:
一个原因是classes.dex在.apk-package的根目录中找不到。 要么
该文件在apk-package或 它位于.apk文件中的子文件夹中。
这两种情况都会导致终止,因为Android只搜索apk文件的根目录。造成这种混乱的原因是.apk文件的构建运行没有错误消息。
造成这种错误的核心原因可能是:
dx工具需要在当前的主工作文件夹中找到classes.dex。但实际上,classes.dex位于其他位置。 Aapt在classes.dex的位置有错误信息。例如,在aapt.exe中添加…bin / classes.dex。这是错误的,因为classes.dex在创建的.apk文件的子文件夹/bin中。