热门标签 | HotTags
当前位置:  开发笔记 > Android > 正文

Androidgetevent用法实例详解

这篇文章主要介绍了Androidgetevent用法实例详解的相关资料,需要的朋友可以参考下

 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按键。

 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


推荐阅读
  • NameNode内存优化基于缓存相同文件名的方法
    NameNode内存优化基于缓存相同文件名的方法Namenodeheapoptimizationreuseobjectsforcommonlyuse ... [详细]
  • Android中实现复合旋转动画效果
    本文将探讨如何在Android应用中实现动态且吸引人的旋转动画。通过结合多种动画类型,如透明度变化、旋转、缩放和位移,可以创造出更为复杂的视觉效果。我们将从XML布局和Java代码两个方面进行详细介绍。 ... [详细]
  • 本文介绍了一种SQL查询方法,用于将表中的行数据转换为列显示,特别是当需要根据特定条件聚合不同字段的数据时。通过使用子查询和GROUP BY语句,可以有效地实现这一转换。 ... [详细]
  • 本文详细介绍了Linux操作系统中的cp和scp命令,包括它们的基本使用方法、常见选项以及如何通过scp命令安全地在不同主机之间传输文件。 ... [详细]
  • VMware Horizon View 5.0桌面虚拟化部署实践与心得
    在近期的研究中,我花费了大约两天时间成功部署了桌面虚拟化环境,并在此过程中积累了一些宝贵的经验。本文将分享这些经验和部署细节,希望能对同样关注桌面虚拟化的同行有所帮助。 ... [详细]
  • Python编码入门指南
    本文探讨了使用Python进行网络设备连通性测试的简便性,特别是针对IP地址范围为192.168.0.101至192.168.0.200的设备。通过比较Python与Shell、Java等语言,展示了Python在执行此类任务时的优势。 ... [详细]
  • 本文详细介绍了在 Ubuntu 16.04 系统中使用 APT-GET 包管理器安装 MySQL 5.7 数据库的过程,并对安装后的文件和目录结构进行了说明,包括重要的配置文件及其功能。 ... [详细]
  • Node.js 入门指南(一)
    本文介绍了Node.js的安装步骤、如何创建第一个应用程序、NPM的基本使用以及处理回调函数的方法。通过实际操作示例,帮助初学者快速掌握Node.js的基础知识。 ... [详细]
  • 本文介绍了两种有效的方法来解决移动应用在启动过程中出现的黑屏或白屏现象,包括通过修改应用的主题来添加启动画面或设置背景为透明。 ... [详细]
  • 在Java开发中,使用BASE64编码通常可以直接利用JDK内置的库。然而,在Android平台上,由于安全性和兼容性的考虑,直接引用JDK中的`sun.misc.BASE64Decoder`会导致错误,因此需要引入第三方库来实现相同的功能。 ... [详细]
  • MainActivityimportandroid.app.Activity;importandroid.os.Bundle;importandroid.os.Handler;im ... [详细]
  • 利用RabbitMQ实现高效延迟任务处理
    本文详细探讨了如何利用RabbitMQ实现延迟任务,包括其应用场景、实现原理、系统设计以及具体的Spring Boot实现方式。 ... [详细]
  • 本文档旨在帮助开发者回顾游戏开发中的人工智能技术,涵盖移动算法、群聚行为、路径规划、脚本AI、有限状态机、模糊逻辑、规则式AI、概率论与贝叶斯技术、神经网络及遗传算法等内容。 ... [详细]
  • 详解 | 日志系统ViseLog的基本使用与功能
    本文详细介绍了日志系统ViseLog的使用方法及其核心功能,旨在帮助开发者更好地理解和利用这一工具,提高开发效率。 ... [详细]
  • 本文探讨了随着并发需求的增长,MySQL数据库架构如何从简单的单一实例发展到复杂的分布式系统,以及每一步演进背后的原理和技术解决方案。 ... [详细]
author-avatar
mobiledu2502901583
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有