zoukankan      html  css  js  c++  java
  • Android(Linux)模拟按键、触摸屏等事件

    前提:

    在我们应用程序或者在写Android自己主动化測试时候经常会须要模拟实体按键,来给我们做測试用。这也是我要整理的目的。

    基本的涉及的是Linux Input Event事件。

    下面的样例基于Android 5.1(Linux-3.10)。

    一、利用getevent、sendevent模拟按键

    (1)命令:getevent -t
    结果:

    ...
    add device 6: /dev/input/event9  
      bus:      0000  
      vendor    0000  
      product   0000  
      version   0000  
      name:     "msm8994-snd-card Button Jack"  
      location: "ALSA"  
      id:       ""  
      version:  1.0.1  
      events:  
        KEY (0001): 0100  0101  0102  0103  0104  0105  0106  0107   
      input props:  
        <none>  
    ... 

    得知:我们所要的耳机按键的相应的input事件是event9。

    (2)命令:getevent -t /dev/input/event9 (getevent -l /dev/input/event9会有更加具体信息),使用按耳机按键预先获取耳机事件信息
    结果:

    按键按下:
    0001 00e2 00000001
    0000 0000 00000000
    松下按键:
    0001 00e2 00000000
    0000 0000 00000000

    (3)使用sendevent命令模拟触发线控按键事件

    sendevent /dev/input/event9 0001 00e2 00000001
    sendevent /dev/input/event9 0000 0000 00000000
    **这个之间要延时500ms~1s,不然会被系统误觉得是误触发的**
    sendevent /dev/input/event9 0001 00e2 00000000
    sendevent /dev/input/event9 0000 0000 00000000

    注:仅仅要是input的事件都是能够用sendevent来模拟。但有时候就力不从心了如模拟触摸屏的滑动,假设用sendevent就须要大量的命令来模拟。

    这时能够用input命令来取代。

    二、利用input命令实现模拟按键、触摸屏操作

    (1)模拟按键
    命令:input keyevent {键值}
    已知Android手机音量+(KEYCODE_VOLUME_UP)的键值是24,那使用
    input keyevent 24就可模拟按下音量+键。

    很多其它的键值见附件1。

    (2)模拟触摸屏操作(点按、滑动)
    命令:input swipe {起始点x轴值} {起始点y轴值} {终点x轴值} {终点y轴值} {滑动时间[可忽略]}。时间单位:ms
    比如:从x=100,y=500。滑到x=600,y=500。时间100ms
    input swipe 100 500 600 500 100

    命令:input tap {x轴值} {y轴值}
    比如:点击x=100,y=500这个点。模拟点击APP图标打开应用
    input tap 100 500

    附件1

    这里写图片描写叙述
    这里写图片描写叙述
    这里写图片描写叙述
    这里写图片描写叙述
    这里写图片描写叙述
    这里写图片描写叙述

  • 相关阅读:
    【代码笔记】Web-利用Dreamweaver实现form
    【代码笔记】Web-利用Dreamweaver实现表格
    【工具相关】Web-HTML特殊字符对照表
    【工具相关】Web-Sublime Text2-注释
    【工具相关】web-HTML/CSS/JS Prettify的使用
    【工具相关】Web--nodejs的安装
    【代码笔记】Web--使用Chrome来查看网页源代码
    【代码笔记】Web-手机端的meta
    【工具相关】Web-Sublime Text2-通过Package Control安装插件
    【工具相关】Web-Sublime Text2-安装 Package Control
  • 原文地址:https://www.cnblogs.com/wzjhoutai/p/7195950.html
Copyright © 2011-2022 走看看