android apk死活安装不上

天王盖地虎626 发布于 2016/05/27 13:48
阅读 189
收藏 0

今天,在几台机器上运行了下,报错如下:

Installation error: INSTALL_FAILED_DEXOPT

Please check logcat output for more details.

Launch canceled!

我搜索了下百度,貌似 是因为classes.dex过大造成的,因为方法数好像快到65535了

请问下,这该如何是好呀?

加载中
0
mgic
mgic

仔细看下logcat日志,如果真的因为方法数过多,会有提示的。

一个dex方法数过多,解决办法

1、如果不想采用分包,那么就看看自己的代码,或者第三方库的jar,看哪些类或方法可以精简

2、采用分包multidex。这个是谷歌提供的一个工具包。as中可以直接引用过来,具体配置你要问下搜索引擎

0
天王盖地虎626
天王盖地虎626

引用来自“mgic”的评论

仔细看下logcat日志,如果真的因为方法数过多,会有提示的。

一个dex方法数过多,解决办法

1、如果不想采用分包,那么就看看自己的代码,或者第三方库的jar,看哪些类或方法可以精简

2、采用分包multidex。这个是谷歌提供的一个工具包。as中可以直接引用过来,具体配置你要问下搜索引擎

已经找到原因了,我通过比较前后2个版本的工程,发现最新版本的libs下引入了一个junit3.8.1.jar

我发现只要把这个jar给去掉,就可以在这些手机上安装了,老实说,我也搞不懂,为啥会这样,我猜测可能是junit3.8.1.jar和我的工程中部分内容有冲突吧。

其实当初引入这个jar也是巧合,因为要实现饼状图,我在网上找了一个demo,正好里面有个junit3.8.1.jar(实际上给去掉也不会报错的),我就直接全盘接受引入到我的工程中,就这样,导致我的工程一直不能再几款手机上安装,如果仅仅是这个junit3.8.1.jar导致的,但是,如果仅仅运行这个demo,发现在这几款手机上又都是能安装的,奇怪吧。

返回顶部
顶部