一、前提条件:
已经部署好了Android UiAutomator测试环境。
二、在部署Genymotion时遇到了两类问题:
1、通过eclipse打开一个模拟设备,然后将编译好的jar包push到手机/data/local/tmp/目录时报错:
G:\adt-bundle-windows-x86-20140702\android-workspace\Demo1>adb push G:\adt-bundle-windows-x86-20140702\android-workspace\Demo1\bin\demo.jar /data/local/tmp/
adb server is out of date. killing...
ADB server didn‘t ACK
* failed to start daemon *
error:
解决办法:该问题是由于没有设置Genymotion中ADB路径,打开Genymotion工具,点击Setting按钮,点击ADB,选择Use custom Android SDK tools,然后配置上你PC机中Android SDK的安装路径即可。
2、问题一解决后,继续将编译好的jar包push到手机 /data/local/tmp/目录下依然报错:
G:\adt-bundle-windows-x86-20140702\android-workspace\Demo1>adb push G:\adt-bundle-windows-x86-20140702\android-workspace\Demo1\bin\demo.jar /data/local/tmp/
error: more than one device and emulator
error: more than one device and emulator
1)首先通过adb devices命令查看是否真的打开多个设备,发现确实有多个
G:\adt-bundle-windows-x86-20140702\android-workspace\Demo1>adb devices
List of devices attached
emulator-5554 offline
4dfadcb86b00cf05 device
2)关闭了4dfadcb86b00cf05这个设备后,再次输入adb devices命令,发现emulator-5554 offline依然存在
问题原因:有程序占用5555端口,导致adb认为5554不能作为第1个设备启用
方法:
1. 用netstat –ano(即netstat -a –n –o),查看5555端口被哪个PID占用。
2. ntsd -c q -p PID杀死该进程,释放该端口号。
3. 再运行adb devices,发现emualtor-555 offline没有了