美文网首页Android
adb 模拟用户操作

adb 模拟用户操作

作者: chaos4fun | 来源:发表于2022-06-02 15:19 被阅读0次

    https://blog.bihe0832.com/adb-shell-input.html

    简介

    input可以用来模拟各种输入设备的输入操作。

    命令说明

      Usage: input [<source>] <command> [<arg>...]
    
      The sources are:
            trackball
            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)
    

    部分参数说明

    1. source对应各种输入源。一般开发中都是用默认值即可。也就是说一般使用中我们的参数中并没有source。
    2. 输入命令中text 和 keyevent是通用的;tap和swipe适用于触摸屏;而press和roll用于有触摸球的设备,由于使用的很少,因此不做说明。

    模拟输入文本(text)

    用法与事例

    主要用于在输入框中输入内容。命令很简单。例如:

    adb shell input text "hello,world"
    

    注意事项

    1. 使用的前提是当前要输入的位置已经获得了焦点。
    2. 特殊字符的输入:adb shell input text中空格、’'、&都是有特殊含义的特殊字符,无法直接输入,要想输入只能使用keyevent。
    3. 输入过程中左移右移、删除等都需要使用keyevent。

    模拟按键(keyevent)

    用法与事例

    主要用于模拟键盘的输入,因此是在用键盘的地方才用得到。例如:

    adb shell input keyevent 67
    

    常用按键:

    按键键码 功能 对应Android定义KeyEvent
    1 按menu键 KEYCODE_MENU
    3 按home键 KEYCODE_HOME
    4 按back键 KEYCODE_BACK
    21 光标左移 KEYCODE_DPAD_LEFT
    22 光标右移 KEYCODE_DPAD_RIGHT
    67 按删除按钮 KEYCODE_DEL

    完整按键键码查询

    http://developer.android.com/reference/android/view/KeyEvent.html

    模拟屏幕滑动(swipe)

    用法与事例

    主要用于模拟手指在屏幕的滑动。例如:

    adb shell input swipe 0 20 300 500 #意思从屏幕(0,20)滑动到(300,500)
    

    参数含义

    1. 四个参数,分别是其实位置的横竖坐标和结束位置的横竖坐标
    2. 参数的意思是模拟在屏幕上的直线滑动
    3. 参数可以正值,可以负值

    模拟屏幕轻触(tap)

    用法与事例

    主要用于模拟手指在屏幕的轻触点击。例如:

    adb shell input tap 100 400
    

    参数含义

    1. 两个参数,先横后竖
    2. 参数的意思是模拟在屏幕上点击的位置。

    adb 截屏并保存图片到电脑

    adb shell screencap  /sdcard/a.png // 截屏并保存到手机上
    
    adb pull /sdcard/a.png // 复制图片到电脑

    相关文章

      网友评论

        本文标题:adb 模拟用户操作

        本文链接:https://www.haomeiwen.com/subject/rdyqmrtx.html