我正在开发在Android 1.5和Andoroid 2.x平台上运行的应用程序。 当我在Android 2.2上安装它时一切正常,但在使用Android 1.5的模拟器上我收到错误:
Failure [INSTALL_FAILED_DEXOPT]
可能是什么问题?
UPD 这是Logcat输出:
09-26 07:12:22.484: INFO/PackageManager(579): /data/app/vmdl23706.tmp changed; unpacking
09-26 07:12:22.494: DEBUG/installd(557): DexInv: --- BEGIN '/data/app/vmdl23706.tmp' ---
09-26 07:12:36.114: ERROR/dalvikvm(1362): LinearAlloc exceeded capacity, last=336
09-26 07:12:36.114: ERROR/dalvikvm(1362): VM aborting
09-26 07:12:36.265: INFO/DEBUG(551): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
09-26 07:12:36.265: INFO/DEBUG(551): Build fingerprint: 'generic/sdk/generic/:1.5/CUPCAKE/150240:eng/test-keys'
09-26 07:12:36.265: INFO/DEBUG(551): pid: 1362, tid: 1362 >>> /system/bin/dexopt <<<
09-26 07:12:36.265: INFO/DEBUG(551): signal 11 (SIGSEGV), fault addr deadd00d
似乎记忆力还不够......如果有人知道如何应对这样的问题?我会非常感谢任何帮助。
答案 0 :(得分:5)
这是Dalvik在异常复杂的界面层次结构中触发的限制。
http://code.google.com/p/android/issues/detail?id=22586
详细了解有关解决方法的建议。简单的答案可能是尝试使用不太复杂的不同库。
修复程序已合并到Android AOSP中。 https://android-review.googlesource.com/#/c/30900/
答案 1 :(得分:0)
尝试在模拟器上安装我的应用时出现此问题。有助于通过AVD Manager重置模拟器(擦除所有用户数据)。让我们看看这会持续多久......