adb 模拟人机交互事件

1 在终端中输入:adb shell 

2 输入input 会得到如下信息:

    Usage: input [<source>] <command> [<arg>...]

source : 事件源

command : 命令

arg : 参数

The sources are:
      trackball  // 轨迹球,好像HTC hero3 有这个东西
      joystick // 操纵杆
      touchnavigation
      mouse
      keyboard // 键盘
      gamepad
      touchpad
      dpad
      stylus
      touchscreen  // 触摸屏

The commands and default sources are:
      text <string> (Default: touchscreen)
      keyevent [--longpress] <key code number or name> ... (Default: keyboard)
      tap <x> <y> (Default: touchscreen)
      swipe <x1> <y1> <x2> <y2> [duration(ms)] (Default: touchscreen)
      press (Default: trackball)
      roll <dx> <dy> (Default: trackball)

text : 文本输入,参数为字符串,使用两个单引号引起来

    在文本输入框获取焦点的时候,adb shell 中输入 eg: input text 'hello world',观察效果

keyevent : 键盘事件,参数为键盘符对应的数字或者名称

     用来执行各种键盘事件,比如返回,点击键盘上的某个按钮等,eg: input keyevent 3 == 点击home键

tap : 用户点击事件,参数为绝对屏幕坐标

    模拟点击操作: eg: input tap 100 100 => 点击屏幕上坐标值为(100,100)的点

swipe : 滑动事件,参数为滑动开始点和结束点的坐标,

    eg: input swipe 100 100 200 200 => 从点y1 (100,100) 滑动到 点y2(200,200) ,还可以指定滑动的时间,单位为ms

    该命令还可以模拟长按事件 eg: adb shell input touchscreen swipe 170 187 170 187 2000 长按点(170,187) 2s时间

press 没太弄明白,使用之后类似于切换焦点

roll 没有使用过,这里就不做介绍了







你可能感兴趣的:(adb 模拟人机交互事件)