我正在使用Android 2.2开发一个Android应用程序,我的应用程序APK大小是22.5 MB,我想为三星平板电脑创建一个新的构建。我得到了以下错误:

INSTALL_FAILED_DEXOPT

如何解决这种错误?


当前回答

从Android SDK和AVD管理器重新启动模拟器,并选择选项擦除用户数据已经为我解决了这个问题。

你可以在下图中找到高亮显示的选项:

其他回答

考虑使用proguard来缩小APK。如果我试图在旧的三星Galaxy Ace 2.3.6设备上安装25MB以上的APK,而没有使用proguard收缩/优化代码,我也会遇到同样的问题。

Jumbo模式和重新启动设备无效。

我添加了下面的行到gradle。属性文件,问题得到解决:

android.enableD8=false 
android.enableD8.desugaring= false

我在真正的设备上运行这个应用程序。

您正在安装的应用程序的旧版本有已更改的依赖库/ jar。我在更新我的应用程序引用的其他jar文件时遇到了这个问题。

你将需要卸载旧版本,然后你应该没有更多的问题…

设置—>应用程序—>管理应用程序—>[找到并卸载您的应用程序]

INSTALL_FAILED_DEXOPT错误不应该爆发。就像

[2011-06-14 01:23:40 - ProtectYourself] Installing ProtectYourself.apk...
[2011-06-14 01:24:26 - ProtectYourself] Installation error: INSTALL_FAILED_DEXOPT
[2011-06-14 01:24:26 - ProtectYourself] Please check logcat output for more details.
[2011-06-14 01:24:26 - ProtectYourself] Launch canceled!

呜。

一个原因是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中。

也许这个会有帮助:

在启动模拟器之前擦除用户数据 清理项目 删除不需要的依赖项....