adb input 命令输入文本功能介绍

来源:互联网 发布:一句激励你的话知乎 编辑:程序博客网 时间:2024/06/13 17:50

      最近帮同事做一个播放器的播放验证功能。就是输入播放地址,点击播放看是否能正常播放、seek等。他给我一个apk,打开后界面是这样的:

        一个文本框(需要收到输入播放地址),一个播放按钮。

   看着是没有啥问题,不过我是运行到电视或者机顶盒上。头疼了,文本框?我每次要用遥控器输入播放地址,并且地址还很长,输错了还要重新输入,挺麻烦的呀。旁边的大师看到了,过来说:你可以用input命令,输入文本。这样,就不用遥控器输入了。

  于是,我从网上找来input的用法,测试后果真很方便。再长的播放地址也不怕啦。所以,小小的功能有时候确实发挥很大的作用。下面我就讲下怎么使用该命令吧。以下,都是参考:http://blog.csdn.net/soslinken/article/details/49587497得来的。

  1.功能

   input命令是用来向设备发送模拟操作的命令的,包括输入文本、发送按键。

  2.使用

      input text <string>  //输入文本 
      input keyevent <key code number or name> //发送按键
      input tap <x> <y>
      input swipe <x1> <y1> <x2> <y2>

    将目标对象获取焦点,比如将遥控器移动到文本框中。此时在pc电脑打开adb,连接设备。输入命令:

    adb shell input text "hello,world"

    此时,目标对象就会展示你输入的文本。如果多次输入,文本展示是叠加效果:

    hello,worldhello,worldhello,worldhello,world

    如果,想删除目标文本的内容,没有快捷的方法。要么遥控器删除,如果遥控器没有删除按键,也调不了系统的输入法,可以模拟发送按键方式:

   adb shell input keyevent 67 

    每次只能删除一个字符。所以,要执行多次才能将文本框的字符删除完。

  

   另外, input tap 和 input swipe 还没有使用过,其是对屏幕位置发送命令。先不做研究了,网上也很多说明,要用的时候在研究下。


0 0