Installation error: INSTALL_FAILED_DEXOPT
来源:互联网 发布:js做单选题和多选题 编辑:程序博客网 时间:2024/06/05 17:31
今天打包时,发现2.3机器,产生的APK在某些机器上不能安装(Installation error: INSTALL_FAILED_DEXOPT),针对这个问题的一个可能解释是:最新的ADT和SDK Tool在将jar转化成dex的时候,可能会合并类的代码,这将导致巨大的类;类中的每一个方法都分配有一个id,字节码中以id标识和调用方法;早期的Dalvik VM内部使用short类型变量来标识方法的id,最大值限制在65535;综合上述因素,代码在安装的时候,不能通过验证,所以安装失败。
我们的项目因为代码里引入了过多的开源library,所以导致方法数过多,最后只能精简代码,删除不必要的library来解决这个问题。
最新的Android已经解决了这个问题,但是更早的Android版本可能仍然存在此问题。
因此,由于大量遗留机器的存在,这个问题是不能彻底解决的,一个临时的解决方案是:删掉没有实际使用的代码,或者使用ProGuard处理代码(可以减小代码体积)。
一个不幸的推论是:随着一个软件功能的增加,代码的膨胀,APK包终将超出可以处理的范围,也许就是8M(指APK包里面的classes.dex).
与此问题相关的两个讨论组是:
https://code.google.com/p/android/issues/detail?id=40409
https://groups.google.com/forum/?fromgroups=#!topic/adt-dev/tuLXN9GkVas
目前2.3版本市场只有20%了,希望这个占有率快速下降吧!
转自:http://www.cnblogs.com/renkangke/p/3546583.html
今天打包后遇到了这个问题,正在验证;
- Installation error: INSTALL_FAILED_DEXOPT
- Installation error: INSTALL_FAILED_DEXOPT
- Installation error: INSTALL_FAILED_DEXOPT
- Android 中 Installation error: INSTALL_FAILED_DEXOPT 的一些问题
- 安装软件到手机失败提示 Installation error: INSTALL_FAILED_DEXOPT
- Android真机测试安装时报错Installation error: INSTALL_FAILED_DEXOPT
- Android真机测试安装时报错Installation error: INSTALL_FAILED_DEXOPT
- Error: Installation error: INSTALL_FAILED_UID_CHANGED
- Installation error: INSTALL_FAILED_UPDATE_INCOMPATIBLE
- Android Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE
- Android Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE
- Android Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE
- MySQL Installation Error
- ANDROID Installation error: INSTALL_FAILED_CONFLICTING_PROVIDER
- ANDROID Installation error: INSTALL_FAILED_CONFLICTING_PROVIDER
- Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE
- 关于Installation error: INSTALL_FAILED_MISSING_SHARED_LIBRARY
- Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE
- 敏捷软件开发——项目版本迭代
- C++中extern “C”含义深层探索
- Qt入门-表格类QTableWidget
- 数据库查询结果作为表
- QStringListModel的简单使用
- Installation error: INSTALL_FAILED_DEXOPT
- PowerDesigner简单教程
- greap使用
- ZOJ-1608
- 输出1-100 以内的质数Quality3
- Qt 样式表 --- setStyleSheet
- soj1003. Hit or Miss
- Java 安卓获得获得手机设备信息
- Ubuntu12.04 设置当前目录下打开i终端