唔,之前已经想过今后不动android,没想到还是因为比赛的原因重操旧业。android有很多问题是由于eclipse的不完善造成的,比如今天遇到的这个问题Unable to execute dex: Multiple dex files define

[2011-10-23 16:23:29 - Dex Loader] Unable to execute dex: Multiple dex files define Lcom/myapp/R$array; [2011-10-23 16:23:29 - myProj] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lcom/myapp/R$array;

好了,造成这个问题的原因呢,每个人应该遇到的问题不一样,但是都是因为eclipse编译器造成的,可以参考一下两个文章(1.http://blog.csdn.net/asan855/article/details/7568702 2.http://stackoverflow.com/questions/7870265/unable-to-execute-dex-multiple-dex-files-define-lcom-myapp-rarray)

下面说下我的想法和解决方案:


原因一:因为apk编译出现问题

解决方法:直接删除bin文件,eclipse在编译的时候会再为你自动生成,如果没有就重启eclipse


原因二:包名重复

解决方法:包名重复有两种可能。

1,其一是两个jar名字一样,在lib里可以看一下,如果有一样的就删掉一个。

2. 这种情况是大家要注意的。有的时候jar名明明不同,但是也会报这个错,因为两个jar里面的包名有相同的。这就要求我们打开jar,看看里面的包名是不是重复。

如下图是比对,Android_Services_2.2.0.jar和Android_Location_V1.1.2.jar,两者没有相同的包。

【Android-tips】 Unable to execute dex: Multiple dex files define 解决方法_第1张图片


一些思考:在做程序的时候,遇到bug还是要自己从原理来理解找办法,像是我上面第二条提到的情况,stackoverflow里其实也没交代,有的东西还是要自己多想,不要一味的上网找答案,特别是在操作蛋疼的android时。


/********************************

* 本文来自博客 “李博Garvin“

* 转载请标明出处:http://blog.csdn.net/buptgshengod

******************************************/


更多相关文章

  1. 【记录】 Android 双卡手机获取两个IMEI等
  2. android上下文 判断两个context是否相同
  3. 用eclipse开发android时两个组件总是重叠的,怎么解决
  4. android下lcd显示的两个问题
  5. android 4.3之前的版本 播放hls获取不到总时长的原因
  6. android 两个apk之间恭喜数据SharedPreferences
  7. Android DataBinding 找不到生成的binding类的原因
  8. android ANR产生原因和解决办法
  9. 分享两个 Android 开源项目和一个 Doc

随机推荐

  1. Android中Preference的使用以及监听事件
  2. Android(安卓)之 Dialog复选框获取值
  3. android 报错集锦
  4. Android中webview的使用
  5. 源码开发-小结
  6. Google Android's Gingerbread Update Co
  7. [zt]获取android联系人信息
  8. FloatingActionButton
  9. [Android(安卓)GMS 认证] CTS 问题列表之
  10. Android(安卓)Manifest 用法