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

INSTALL_FAILED_DEXOPT

如何解决这种错误?


当前回答

在我的案例中,这是kotlin插件1.1.51版本中的一个bug

https://youtrack.jetbrains.com/issue/KT-20034

此错误出现在旧设备上(API 16)。

通过删除@Parcelize注释并将其替换为以下代码生成器:https://github.com/nekocode/android-parcelable-intellij-plugin-kotlin修正了此问题

其他回答

我需要禁用即时运行来解决这个问题。要禁用OS X上的即时运行,请进入Android Studio >首选项>构建,执行,部署>即时运行,然后从“启用即时运行”中删除“部署时热插拔代码/资源更改”(默认启用)。

我正在使用Android Studio,也出现了同样的错误。

删除主模块的构建文件夹有帮助。删除后一切恢复正常。

对我来说,这似乎与磁盘空间有关。新推出的5.1仿真器启动时出现了“磁盘空间不足”错误——查看仿真器属性,为内部存储分配的默认空间是800MB,这看起来很低。

因此,解决方案是增加内存(我增加到4GB)。奇怪的是,模拟器仍然引导相同的磁盘空间警告,但出厂重置(设置->备份和恢复在模拟器内部)完全解决了我的问题。

只是有点奇怪,它不能在默认设置下开箱即用。

检查设备上的存储空间

Classes.dex不会进入最终的。apk。运行gradlew—脱机清洁&& gradlew—脱机组装调试每次都为我解决问题。从那时起,你可以再次从Android Studio启动应用程序。

编辑:在我上面所说的之前,进入任务管理器并杀死所有cmd.exe和conhost.exe进程(或者只是一个aapt卡住的进程)。否则,aapt从现在开始从命令行启动时会崩溃,并出现臭名昭著的错误-1073741819。