最近有一个测试需求,需要重复性的滑动手机、对手机进行触摸、点击操作等,所以就需要实现一个Android模拟人工操作的功能。一开始想写一个APK,但在实现过程中遇上了麻烦,好像需要系统应用权限等,笔者本身并不是做Android开发的,所以就没有实现。最后是通过adb shell 实现了该功能。Java开启线程,结合键盘和鼠标事件,使用adb shell控制手机。详解如下。
一、所需知识
1、最基础的adb shell 指令。input tab 等。
2、Java自动化基础知识。java.awt.Robot
3、无
二、所需环境
硬件:一台电脑、一部手机、一根数据线。软件:jdk、adb工具
三、编码
1、Java模拟鼠标点击操作方法
//实现鼠标左键点击操作
public static void pressMouse(Robot r,int m,int delay){
r.mousePress(m);
r.delay(10);
r.mouseRelease(m);
}
2、Java模拟鼠标移动操作
//实现将鼠标移动到电脑屏幕 x=518,y=339的位置
Robot rb = new Robot();
rb.mouseMove(518,339);
rb.delay(500);
3、Java模拟键盘输入操作
public static void pressKey(Robot robot,int keyEvent){
robot.keyPress(keyEvent);
robot.keyRelease(