Android真机测试安装时报错Installation error: INSTALL_FAILED_DEXOPT
Consle报错信息:
[2015-02-26 11:13:31 - ] Installation error: INSTALL_FAILED_DEXOPT
[2015-02-26 11:13:31 - ] Please check logcat output for more details.
[2015-02-26 11:13:31 - ] Launch canceled!
以前的一个项目,放了一段时间后今天拿起来继续做,加了一个功能后真机运行调试,但是安装时报上面的错误。
网上查询都是说是因为生成的dex文件的方法数超过65K也就是65535个,但是我这个项目还是一个比较小的项目,方法数不可能超过65535个。
尝试了很多方法都无效就在我快要放弃的时候,终于找到了问题的所在。我的DEXOPT并不是dex方法数过多导致的而是乱码导致的。
在SDK中build-tools目录下,使用dexdump命令:dexdump -f 项目dex文件路径 | grep method_ids_size
该方法可以计算出你的项目生成的dex文件中方法的总数。
上图是我运行该命令后的结果,可以看到有一个错误:Invalid name GetTeamInfo鈥?
GetTeamInfo是我项目中定义的一个变量名,但是怎么会有乱码呢?
原来当时我为了图省事,变量名GetTeamInfo是直接从邮件里Ctrl+C的,可能是编码不同导致的乱码,但是看不到乱码,编译也没有问题,不知道这个乱码是怎么出现的
重新定义GetTeamInfo后问题解决。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。