我正在使用Android 2.2开发一个Android应用程序,我的应用程序APK大小是22.5 MB,我想为三星平板电脑创建一个新的构建。我得到了以下错误:
INSTALL_FAILED_DEXOPT
如何解决这种错误?
我正在使用Android 2.2开发一个Android应用程序,我的应用程序APK大小是22.5 MB,我想为三星平板电脑创建一个新的构建。我得到了以下错误:
INSTALL_FAILED_DEXOPT
如何解决这种错误?
当前回答
INSTALL_FAIL_DEXOPT通常与放在classes.dex上的限制有关。在ics之前的任何版本上,dexopt在超过5 MB的地方都会失败。最近版本的Android使用8或16 MB的缓冲区。
检查APK中classes.dex的大小。看看方法计数是多少也很好,因为dex有65536个方法/字段限制。
引用:
安装应用程序时出现错误
https://www.facebook.com/notes/facebook-engineering/under-the-hood-dalvik-patch-for-facebook-for-android/10151345597798920
如何缩小代码- 65k方法限制在dex
其他回答
我在一个真实的设备上进行了错误测试。清理缓存/卸载,重新启动一切都不适合我,删除构建文件夹的内容可以:)(Android工作室)
一个原因是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中。
从Android SDK和AVD管理器重新启动模拟器,并选择选项擦除用户数据已经为我解决了这个问题。
你可以在下图中找到高亮显示的选项:
检查设备上的存储空间
我改变了模拟器的RAM大小和内部存储容量,现在它正在工作…在eclipse AVD管理器