Android getevent用法实例详解
作者:lqh 发布时间:2021-06-27 10:03:35
Android getevent用法实例详解
最近在测试设备按键的常用命令,感觉这些命令都有的,但就是不知道怎么查找。
翻阅了几篇博文,才发现有一个getevent,就是指这样的命令.
首先需要说明的是getevent命令后面可以带上具体的input设备,列如getevent /dev/iput/event0,这样可以过滤掉一些不用显示的input的设备.
我在之前的使用中,还是有些找不到点子,也是一步一步使用起来的。
首先看-p 选项, -p选项用于输出input设备相关的一些信息,列如, getevent -p /dev/input/event0:
add device 1 : /dev/input/event0:
name: “radio_key”
events:
KEY (0001): 0043 0044 0057 0058
input props:
那么-i 选项,同-p 选项差不多,只是显示的信息更丰富,getevent -i /dev/input/event0:
add device 1: /dev/input/event0
bus: 0000
vendor 0000
product 0000
version 0000
name: “radio_key”
location: “”
id: “”
version: 1.0.1
events:
KEY (0001): 0043 0044 0057 0058
input props:
对于-p或-i选项呢,可以帮助我们判断input设备是否已经注册成功.
再来看-l选项,我们首先不加-l选项来看看,输入getevent /dev/input/event7命令,注event7是触摸屏的input设备:
0001 014a 00000001
0003 0030 000000ff
0003 0035 00000262
0003 0036 00000546
0003 0039 00000011
0000 0002 00000000
0000 0000 00000000
0001 014a 00000000
0000 0002 00000000
0000 0000 00000000
看到了吗,得到的是这样一组信息,只看数字的话,也不知道具体的含义,那么如果加上-l选项呢,getevent -l /dev/input/event7:
EV_KEY BTN_TOUCH DOWN
EV_ABS ABS_MT_TOUCH_MAJOR 000000ff
EV_ABS ABS_MT_POSITION_X 00000262
EV_ABS ABS_MT_POSITION_Y 00000546
EV_ABS ABS_MT_TRACKING_ID 00000011
EV_SYN SYN_MT_REPORT 00000000
EV_SYN SYN_REPORT 00000000
EV_KEY BTN_TOUCH UP
EV_SYN SYN_MT_REPORT 00000000
EV_SYN SYN_REPORT 00000000
我们看,这样就容易明白多了,格式是event type、event code、event value,至于这些所代表的含义可以参考input设备相关的东西。
来看-r选项,-r选项可以输出输入报告的速率,例如getevent -r /dev/input/event7:
0000 0000 00000000 rate 83
0003 0030 0000004d
0003 0035 0000024e
0003 0036 00000364
0003 0039 00000000
0000 0002 00000000
0000 0000 00000000 rate 83
0003 0030 0000004c
0003 0035 0000024f
0003 0036 00000364
0003 0039 00000000
0000 0002 00000000
0000 0000 00000000 rate 83
使用这个选项可以帮助我们检测输入报告的速率是否满足我们的要求,例如检测tp报点速率。
关于getevent命令选项大概就介绍这几个,其他的用法可以参考上面的getevent命令用法,另外,这些命令选项都是可以组合使用的,例如getevent -lr /dev/input/event7。
我是在检测设备按键时,觉得物理键指令无法找到,才发现这些命令。
与getevent相对应的是sendevent命令,但是sendevent命令输入稍显复杂,可以使用另外一个命令input来代替。例如,输入input keyevent KEYCODE_POWER表示按下一次power按键。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
来源:http://blog.csdn.net/google_huchun/article/details/72800415


猜你喜欢
- 前言自从用了SpringBoot,个人最喜欢的就是SpringBoot的配置文件了,和Spring比起SpringBoot更加灵活,修改的某
- 1. 数据类型:在Java源代码中,每个变量都必须声明一种类型(type)。Java数据类型(type)可以分为两大类:基本类型(primi
- AndroidStudio终于出3.0正式版了,内置了kotlin(虽然我安了插件一直能用)。一直忍着没敢下rc版的好奇猫,总算装了正式版。
- java中this与super关键字的使用方法这几天看到类在继承时会用到this和super,这里就做了一点总结,与各位共同交流,有错误请各
- 废话不多说了,关键代码如下所示:import java.util.*;public class Demo04 {public static
- 最近要实现一个功能,就是checkbox跨页多选,在网上看了一下,资料很少,而且大多是不完全的。不过经过我的努力,终于做出来了。
- 服务端:using System;using System.Collections.Generic;using System.Net;usi
- 1. Maven简介相对于传统的项目,Maven 下管理和构建的项目真的非常好用和简单,所以这里也强调下,尽量使用此类工具进行项目构建, 它
- 1.结构体类型C语言中的2种类型:原生类型和自定义类型,结构体类型是一种自定义类型。2.结构体使用时先定义结构体类型再用类型定义变量->
- 我们还是用一个小例子来看看自定义View和自定义属性的使用,带大家来自己定义一个带进度的圆形进度条,我们还是先看一下效果吧从上面可以看出,我
- DateTime dt = DateTime.Now;Label1.Text = dt.ToString();//2005-11-5 13:
- 如何快速判断一个元素是不是在一个集合里?这个题目是我最近面试的时候常问的一个问题,这个问题不同人都有很多不同的回答。今天想介绍一个很少有人会
- 这是Hadoop学习全程记录第1篇,在这篇里我将介绍一下如何在Linux下安装Hadoop1.x。先说明一下我的开发环境:虚拟机:VMwar
- 规则1(无继承情况下):对于静态变量、静态初始化块、变量、初始化块、构造器,它们的初始化顺序依次是(静态变量、静态初始化块)>(变量、
- 在项目中为了友好化,对于错误页面,我们常常会使用自定义的页面。SSM框架组合时代,我们通常通过拦截或者在web.xml中设置对于错误码的错误
- Handler是用于操作线程内部的消息队列的类。这有点绕,没关系,我们慢慢的来讲。前面Looper一篇讲到了Looper是用于给线程创建消息
- 目录1、前言2、实例1、前言法存取数据。除此之外,还可以控制数据的存取方式。在面向对象编程中,大多数都是以类作为数据封装的基本单位。类将数据
- 1. 是否需要整合 ?不需要 : 单独使用Springmvc. 需要将原先Spring中的内容通通迁移到Springmvc中. 例如:数据源
- 在linux主机部署Eureka高可用方案的时候,发现注册到服务中心的服务IP是随机的,由于主机的网卡是多个,随机的IP并不是自己想要的,上
- 前面做了app微信支付的回调处理,现在需要做微信公众号的支付,花了一天多时间,终于折腾出来了!鉴于坑爹的微信官方没有提供Java版的demo