$touch - 触摸驱动

  • 更新时间:2025-12-13 11:58:47

触摸驱动

需要ROOT权限,部分手机不会与手指触摸冲突。

有权限()

是否可用

一般如果有root权限,就是可用的状态,本质上这个函数是用来判断设备是否有root权限的。这个函数性能很高,一旦初始化成功了,就会直接返回true,并不会每次都检查root权限。

  • 返回 : {布尔值} 是否可用

  • 版本 : 1.7.0

//初始化
if($触摸.有权限()){
    $触摸.初始化();
}
//之后再操作,否则无效果

初始化()

初始化

$触摸需要初始化才可以使用,初始化大概需要5秒时间,但如果已经初始化过了,就会直接返回true。

  • 返回 : {布尔值} 是否已经初始化成功

//开始初始化
$触摸.初始化();

触摸按下(手指ID, x, y)

按下手指

  • 参数 : 手指ID {整数} 手指ID

  • 参数 : x {整数} 坐标X

  • 参数 : y {整数} 坐标Y

  • 版本 : 1.7.0

$触摸.触摸按下(1, 100, 100);

触摸移动(手指ID, x, y)

移动手指

  • 参数 : 手指ID {整数} 手指ID

  • 参数 : x {整数} 坐标X

  • 参数 : y {整数} 坐标Y

  • 版本 : 1.7.0

$触摸.触摸移动(1, 300, 500);

触摸抬起(手指ID)

抬起手指

  • 参数 : 手指ID {整数} 手指ID

  • 版本 : 1.7.0

$触摸.触摸抬起(1);

点击(x, y)

点击

原理是在C/C++层执行系统命令进行事件注入,因此效率较高

  • 参数 : x {整数} 坐标X

  • 参数 : y {整数} 坐标Y

  • 版本 : 1.7.0

$触摸.点击(300, 500);

点击(手指ID, x, y)

点击

默认按压时长为1毫秒,该函数的本质是touchDown和touchUp的组合,因此效率较慢

  • 参数 : 手指ID {整数} 手指ID

  • 参数 : x {整数} 坐标X

  • 参数 : y {整数} 坐标Y

  • 版本 : 1.7.0

$触摸.点击(1, 300, 500);

点击(手指ID, x, y, 时长)

点击

原理是touchDown和touchUp的组合

  • 参数 : 手指ID {整数} 手指ID

  • 参数 : x {整数} 坐标X

  • 参数 : y {整数} 坐标Y

  • 参数 : 时长 {整数} 按压时长

  • 版本 : 1.7.0

$触摸.点击(1, 300, 500, 50);

长按(x, y)

长按

原理是touchDown和touchUp的组合,默认按压时间是750毫秒

  • 参数 : x {整数} 坐标X

  • 参数 : y {整数} 坐标Y

  • 版本 : 1.7.0

$触摸.长按(300, 500);

长按(手指ID, x, y)

长按

原理是touchDown和touchUp的组合,默认按压时间是750毫秒

  • 参数 : 手指ID {整数} 手指ID

  • 参数 : x {整数} 坐标X

  • 参数 : y {整数} 坐标Y

  • 版本 : 1.7.0

$触摸.长按(1, 300, 500);

长按(手指ID, x, y, 时长)

长按

原理是touchDown和touchUp的组合

  • 参数 : 手指ID {整数} 手指ID

  • 参数 : x {整数} 坐标X

  • 参数 : y {整数} 坐标Y

  • 参数 : 时长 {整数} 长按时间

  • 版本 : 1.7.0

$触摸.长按(1, 300, 500, 2000);

滑动(x, y, x2, y2)

滑动

默认的滑动时间是1秒

  • 参数 : x {整数} 起点X

  • 参数 : y {整数} 起点Y

  • 参数 : x2 {整数} 终点X

  • 参数 : y2 {整数} 终点Y

  • 版本 : 1.7.0

$触摸.滑动(100, 100, 300, 500);

滑动(x, y, x2, y2, 时长)

滑动

  • 参数 : x {整数} 起点X

  • 参数 : y {整数} 起点Y

  • 参数 : x2 {整数} 终点X

  • 参数 : y2 {整数} 终点Y

  • 参数 : 时长 {整数} 移动时间

  • 版本 : 1.7.0

$触摸.滑动(100, 100, 300, 500, 1000);

滑动(手指ID, x, y, x2, y2, 时长)

滑动

滑动的时间是根据CPU数量来进行计算的,因此并不一定就完全准确,不同手机执行的滑动时间可能有一点误差,但这并没有太大影响。

  • 参数 : 手指ID {整数} 手指ID

  • 参数 : x {整数} 起点X

  • 参数 : y {整数} 起点Y

  • 参数 : x2 {整数} 终点X

  • 参数 : y2 {整数} 终点Y

  • 参数 : 时长 {整数} 移动时间

  • 版本 : 1.7.0

$触摸.滑动(1, 100, 100, 300, 500, 1000);

移动(x, y, x2, y2, 时长)

模拟滑动

原理是C/C++层系统调用命令来实现注入滑动

  • 参数 : x {整数} 起点X

  • 参数 : y {整数} 起点Y

  • 参数 : x2 {整数} 终点X

  • 参数 : y2 {整数} 终点Y

  • 参数 : 时长 {整数} 滑动时间

  • 版本 : 1.7.0

$触摸.移动(100,200,600,1200,2000);

按键(键值)

模拟按键

原理是C/C++层系统调用命令来实现注入按键事件

  • 参数 : 键值 {整数} 键值

  • 版本 : 1.7.0

$触摸.按键(4);//返回按钮