一)原理
1)在PC上用鼠标操作并通过ADB向手机上发送点击屏幕命令,来替代手机上手指点击屏幕操作;
2)PC上鼠标操作实现对跳动到目标块间距离的测量,测得的距离乘以某个系数(需调试)得到点击屏幕时持续的时长。
二)运行环境要求
1)PC: windows系统;
2)ADB 版本:1.0.31及以上;
3)手机:安卓系统;
三)参考资源
1)ADB:http://download.csdn.net/download/u014642880/8079847
2)PC端源码:http://download.csdn.net/download/zywee/10205148
四)操作步骤
1)将 adb_windows.tar.gz 解压到本地,adb版本:1.0.31
2)用数据线连接电脑和手机,打开安卓开发者调试模式
3)在adb解压目录下打开命令行,使用如下命令检查电脑与手机ADB模式是否畅通:adb devices -l
结果显示类似:“4df7df3c53d5cff7 device product:m0xx model:GT_I9300 device:m0”说明ADB正常;
如果仅显示:“List of devices attached”,说明ADB没有连通,检查数据线连接或手机上ADB模式是否打开;
4)在ECLIPSE中导入Plane工程,修改JumpGame.java第47行的“basePath”变量值,保持与 adb_windows.tar.gz 解压后的本地目录一致
5)运行JumpGame.java
6)手机上打开“跳一跳”小程序并开始游戏
7)在JumpGame运行窗口中单击一下,等待手机第一屏截图在窗口中显示出来
8)如果截图在JumpGame窗口正常显示,则开始执行如下操作如下:
a)在小人脚下按下鼠标左键
b)拖动鼠标到下一目标块中心点释放
c)观察手机屏,确认微信跳一跳里小人跳动结果
d)重复a ~ c
五)补充说明
1)如果JumpGame运行窗口中实测距里与手机上小人跳动距离有偏差,需要调整JumpGame.java第146行与距离相剩系数(目前是:3.6);
2)ADB模拟触点屏幕命令会在手机文件目录下生成screenshot.png的截屏图片。
3)涉及的ADB命令:
-查看ADB版本
adb version
-列示设备状态
adb devices -l
-点压屏幕
adb shell input touchscreen swipe 200 200 200 200 1500
-屏幕截图到内存卡
adb shell screencap -p /sdcard/screenshot.png
-发送手机截图到本地
adb pull /sdcard/screenshot.png ./