问题1:运行Android程序时弹出提示框如下图所示:
原因:该项目被当做库使用了,Is Library 属性被勾选
解决方法:去掉项目的 Is Library 属性
问题2:运行Android程序时弹出提示框以及日志输出如下:
原因:项目中有超过一份的类冲突,程序不知道该读取哪个类
Console面板输出:
.......
...] Unable to execute dex: Multiple dex files define Lorg/cocos2d/Cocos2D$1;
...] Conversion to Dalvik format failed:Unable to execute dex: Multiple dex files define Lorg/cocos2d/Cocos2D$1;
解决方法:删除引起突冲的类(或更改名字、包路径),删除多引起冲突的jar包
问题3:运行Android程序时模拟器正常启动,但是没启动调试程序:
原因:可能是模拟启器太慢,连接超时了
Console面板输出:
.......
...] Failed to install on device 'emulator-5554': timeout;
解决方法:eclipse -> window -> Preferences -> Android -> DDMS -> ADB connection time out(ms).
把这个时间设置的久一些,默认是5000ms(5秒), 改为30000ms(30秒),重新调试程序就OK了。
设置截图如下:
问题4:使用真机调试程序时 ADB服务启动失败:
原因: 可能是端口被其它进程占用导致ADB服务启动失败
Console面板:
......
...] ADB server didn't ACK
...] * failed to start demon *
CMD命令手动启动时也提示失败:
解决办法:查看ADB服务使用的端口,找出目前占用该端口的进程,结束相应进程后重新启动服务即可。
步骤如下:
a.运行命令adb nodaemon server ,得知服务使用的默认端口是 5037
b.运行命令 netstat -ano | findstr "5037" ,查看占用该端口5037的进程列表 PID = 6164
c.结束进程 PID = 6164 (sjk_daemon.exe 好像是金山手机助手,如果结束不了可以先把金山毒霸关掉,再结束):