最近一直是使用使用Genymotion模拟器与Android开发环境匹配来进行运行和调试的,简单来说就是安装好ADT和Genymotion以后,在Eclipse里面装上Genymotion的官方插件就可以了。但很不巧,五一前出现了问题。具体表现形式是这样的。
当我们点击项目的Run As - Android Application的时候,结果没有将目标apk导入到Genymotion设备中,而是提示
[2015-01-11 15:36:32 - HelloWorld] Android Launch!
[2015-01-11 15:36:32 - HelloWorld] The connection to adb is down, and a severe error has occured.
[2015-01-11 15:36:32 - HelloWorld] You must restart adb and Eclipse.
[2015-01-11 15:36:32 - HelloWorld] Please ensure that adb is correctly located at 'C:\Users\ls\Desktop\adt-bundle-windows-x86_64-20140321\sdk\platform-tools\adb.exe' and can be executed.
、这什么意思?我上网查阅了较多资料,无非就是说我的Genymotion虚拟机端口被占用了,需要将adb进程结束掉再打开。有的文章还具体从原理上分析了Eclipse与Genymotion虚拟机设备连接的具体原理,就是相当于是一个远程连接。而如果你计算机里面有什么程序又将它这个端口占用了的话(比如豌豆荚之类的手机助手),就会造成端口监听冲突,因而报错。甚至文章还告诉我们怎么在命令行的环境下判断端口情况。
但是,无论我怎么尝试都没有解决问题。于是又找到另一种方法,他的意思就是说,更改Genymotion设置里面的ADB设置,现在来看这个思路是正确的。但是文章提示有误,提示目录更改到/../sdk/platform-tools下面寻找adb.exe。事实是:提示报错。因而这种方式也不可取。
经过尝试,最后确定了一种办法。适用于已经排除了手机管理软件干扰的情况。
1.打开Genymotion管理控制台,点击Settings
2.在弹出的对话框中选择ADB选项卡
3.选择Use customs Android SDK tools
4.(最关键)目录制定到你的sdk目录下即可,不是需要到什么platform-tools。即我的例子是:E:/adt-bundle-windows-x86_64-20140321/sdk
此时下方会有小字提醒Android SDK tools found successful。说明大功告成。