我正在使用Android 2.2开发一个Android应用程序,我的应用程序APK大小为22.5 MB,我想为三星平板电脑创建一个新版本。我收到以下错误:
INSTALL_FAILED_DEXOPT
我该如何解决这种错误?
我正在使用Android 2.2开发一个Android应用程序,我的应用程序APK大小为22.5 MB,我想为三星平板电脑创建一个新版本。我收到以下错误:
INSTALL_FAILED_DEXOPT
我该如何解决这种错误?
Answers:
从重新启动仿真器Android SDK and AVD Manager
并选择选项Wipe User Data
已为我解决了此问题。
您可以在以下给定的图像中找到突出显示的选项:
adb kill-server
然后adb start-server
应该可以解决您的问题。可能存在较旧的应用程序,然后先将其卸载。
对我来说,这似乎与磁盘空间有关。新推出的5.1模拟器启动时出现“磁盘空间不足”错误-查看模拟器属性,分配给内部存储的默认空间为800MB,这似乎很低。
解决方案,因此是增加它(我去了4GB)。奇怪的是,仿真器仍然以相同的磁盘空间警告启动,但是在出厂时将其重置(仿真器内部的设置->备份和还原)完全为我解决了该问题。
奇怪的是,默认设置无法立即使用。
您正在安装的旧版本应用程序的依赖库/ 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!
呜呼。
似乎此错误消息可能有许多不同的原因。我遇到的情况是在真实设备上(因此,基于仿真器的解决方案不适用)。
基本上,发生这种情况时,请将Logcat过滤器设置为Verbose或Warn,这将帮助您获取有关原因的更多信息。
就我而言,我正在从事的项目(现有的大型代码库)中包含了多个或冲突的JUnit版本。我尝试部署的Android应用程序具有多个作为依赖项的库项目,并且我错误地将其设置为包含多个JUnit jar文件。
我是根据一系列Logcat消息发现的。请注意,WARN行给出了原因:
DEBUG/dalvikvm(4808): DexOpt: 'Ljunit/framework/TestSuite$1;' has an earlier definition; blocking out
11-06 14:30:10.973: WARN/dalvikvm(4808): Invalid file flags in class Ljunit/runner/Sorter$Swapper;: 0209
11-06 14:30:10.973: null/libc(4808): Fatal signal 11 (SIGSEGV) at 0x00000004 (code=1), thread 4808 (dexopt)
在Android Studio 3.4.1中使用较旧的(5.0)模拟器进行测试。此过程(在Mac上)解决了以下问题:
我更改了模拟器的RAM大小和内部存储容量,现在可以正常工作了……在Eclipse AVD管理器中
尝试我的答案https://stackoverflow.com/a/34918549/3737254
如果您使用android studio 2.0,请禁用即时运行。
仅供参考,即时运行是android studio 2.0的新功能(我从未使用过>。<)
如何禁用:首选项->构建,执行和部署->即时运行->禁用,然后像魔术一样工作
请享用!
我需要禁用即时运行才能解决此问题。要在OS X上禁用即时运行,请转至Android Studio > 首选项 > 构建,执行,部署 > 即时运行,然后从中删除对勾Enable Instant Run to hot swap code/resource changes on deploy (default enabled)
。
dexopt error. Application failed to install
。在找到以下项目之前,我曾尝试过这些方法:adb kill-server
adb start-server
,重新启动Android Studio和恢复出厂设置。
我今天在新的虚拟设备上遇到了与Android Studio相同的问题。看来我已经下载了x86_64
映像,并用等效的方式重新创建了VD。x86
修复后映像。
INSTALL_FAILED_NO_MATCHING_ABIS
在这种情况下,我期望得到一个,但是我还是被卡在了INSTALL_FAILED_DEXOPT
x86
失败。下载图像并将仿真器更改x86_64
为错误后,消失了。我使用了API 21系统映像。
x86_64
映像而不是映像之前,尝试了该线程上的所有内容x86
。我也在使用API 21 AVD(Nexus 5)。
INSTALL_FAIL_DEXOPT通常与对classes.dex的限制有关。在ICS之前的任何版本上,dexopt都会在5 MB以上的内存上失败。Android的最新版本使用8或16 MB的缓冲区。
检查APK中classes.dex的大小。最好查看您的方法计数,因为dex的方法/字段限制为65536。
参考文献:
在构建中启用jumboMode标志后,我遇到了这个问题(dex.force.jumbo=true
)中。在较新的Android设备上,一切正常,但在Gingerbread上安装失败。
因此,如果您的应用由于烦人的65k限制而需要巨型模式,请尝试剪切一些未使用的代码/字符串,然后将巨型模式设置回false。
classes.dex
没有进入决赛.apk
。gradlew --offline clean && gradlew --offline assembleDebug
每次都为我运行固定的东西。从那时起,您可以再次开始从Android Studio启动该应用程序。
编辑:在我上面所说的之前,去任务管理器并杀死所有cmd.exe
和conhost.exe
进程(或只是其中一个aapt
被卡住)。否则aapt
,从现在开始从命令行启动时会发生臭名昭著的错误,从而导致崩溃-1073741819
。
build.gradle
文件。在buildscript依赖项中应该有classpath 'com.android.tools.build:gradle:1.0.0-rc4'
。
尽管如此,我还是卸载了该应用,但出现了INSTALL_FAILED_DEXOPT错误。如果您使用的是Android Studio / gradle,请使用gradle clean对我来说很成功,Cheers。
尝试在2.3设备上安装(在4.0.3上很好)时出现此问题。最终归结于我正在使用的lib项目有多个jar,这些jar用于android中已经存在的东西,例如HttpClient和XML解析器等。看着logcat
导致我找到了它,因为它告诉我由于它们已经在跳过类当下。尼斯无用的原始错误!
没有通用的解决方案,您必须在Logcat上找到报告的错误,才能找出错误。有时,由于使用了指定Target API上不可用的类,因此该类无法“删除”。或者它可能是您在代码中引用的类,但是未打包其中的库。
就我而言,这是kotlin插件1.1.51版中的错误
https://youtrack.jetbrains.com/issue/KT-20034
在旧设备(API 16)上出现此错误。
通过删除@Parcelize注释并将其替换为以下代码生成器来解决此问题:https : //github.com/nekocode/android-parcelable-intellij-plugin-kotlin
targetSdkVersion 22 // 17 ===========================>将此数字设置为小于或等于设备上的Android OS版本可能会有所帮助
defaultConfig {
applicationId "software.nhut.personalutilitiesforlife"
minSdkVersion 16
targetSdkVersion 22//17==========================> set this number less then or equal to the version of Android OS on devices might help
versionCode 5
versionName "1.26"
// Enabling multidex support.
multiDexEnabled true
}
我已经更改了对sdk 21的android version 4支持版本,并出现此错误。因此,我返回了对旧版本的支持版本(在21之前),并且该版本有效。该错误仅在android 2.3中发生
当我尝试更新新的构建工具24.0.1时遇到了这个问题。互联网连接丢失并且工具未成功下载,之后我收到了此错误,并花了很多时间来解决它。但是当我成功更新了构建工具时,问题解决了。祝好运。