input可以用来做测试用,模拟输入事件,如按键等.
源码位置
frameworks\base\cmds\input\src\com\android\commands\input\Input.java
编译命令: m input
编译之后会生成可执行文件input,需要push至设备的/system/bin下.以及jar文件
以下是全部的命令:
adb root
adb remount
adb push Z:\out\target\product\Tinker_Board_2\system\framework\input.jar /system/framework/
adb push Z:\out\target\product\Tinker_Board_2\system\bin\input /system/bin/
adb reboot
源码很简单,最终就是调用 InputManager.getInstance().injectInputEvent(event,
InputManager.INJECT_INPUT_EVENT_MODE_WAIT_FOR_FINISH);
使用示例:
adb shell input swipe 1000 200 0 200 500 : launcher 界面右滑至下一屏。
adb shell input swipe 0 200 1000 200 250 launcher 界面左滑至前一屏。
adb shell input keyevent 3 : 发送Home按键;
adb shell input keyevent 4 : 发送Back按键;
adb shell input tap 300 250 : 在坐标300.250的位置发送tap事件.
adb shell input keyevent 26 : 电源按键;
code定义在 android.view.KeyEvent 。