getevent与sendevent工具

Android系统提供了getevent与sendevent两个工具供开发者从设备节点中直接读取输入事件或写入输入事件。

在这里,我们测试音量加和音量减按键

root@sabresd_6dq:/ # getevent
add device : /dev/input/event0
name: "ar1021 Touchscreen"
could not get driver version for /dev/input/mice, Not a typewriter
add device : /dev/input/event2
name: "gpio-keys"
add device : /dev/input/event1
name: "WM8962 Beep Generator"
//这个后面是音量加
/dev/input/event2: 00000001 //按下:注意这里的0073为十六进制数
/dev/input/event2: 00000000   //同步
/dev/input/event2: 00000000 //松开
/dev/input/event2: 00000000   //同步
//这个后面是音量减
/dev/input/event2:
/dev/input/event2:
/dev/input/event2:
/dev/input/event2:

注意:(2018.1.12更新:getevent -lt 更加直观;如下所示)

|root@sabresd_6dq:/ # getevent -lt /dev/input/event2
[ 2604.070121] EV_KEY KEY_VOLUMEUP DOWN
[ 2604.070121] EV_SYN SYN_REPORT
[ 2604.270183] EV_KEY KEY_VOLUMEUP UP
[ 2604.270183] EV_SYN SYN_REPORT [ 2606.510123] EV_KEY KEY_VOLUMEDOWN DOWN
[ 2606.510123] EV_SYN SYN_REPORT
[ 2606.620089] EV_KEY KEY_VOLUMEDOWN UP
[ 2606.620089] EV_SYN SYN_REPORT

然后我们根据上面的数据进行发送,查看是否音量增加和减少了:(注意:getevent显示的为十六进制,而sendevent发送的为十进制,所以要进行转换

|root@sabresd_6dq:/ # sendevent /dev/input/event2   00000001    //按下音量加
root@sabresd_6dq:/ # sendevent /dev/input/event2 00000000     //同步
root@sabresd_6dq:/ # sendevent /dev/input/event2 00000000   //松开音量加
root@sabresd_6dq:/ # sendevent /dev/input/event2 00000000     //同步
root@sabresd_6dq:/ #
root@sabresd_6dq:/ #
root@sabresd_6dq:/ #
root@sabresd_6dq:/ #
root@sabresd_6dq:/ # sendevent /dev/input/event2
root@sabresd_6dq:/ # sendevent /dev/input/event2
root@sabresd_6dq:/ # sendevent /dev/input/event2
root@sabresd_6dq:/ # sendevent /dev/input/event2
root@sabresd_6dq:/ #

可以发现确实发生了变化

i.mx6 Android6.0.1分析input子系统:测试的更多相关文章

  1. [IMX6]Android6.0移植和分析

    0. 知识点 中断(设备树) [IMX6]设备树分析--dts 1. 编译 Android6.0内核移植(1):分析编译日志 Android6.0内核移植(2):kernel编译内核 单独烧录kern ...

  2. linux input输入子系统分析《四》:input子系统整体流程全面分析

    1      input输入子系统整体流程 本节分析input子系统在内核中的实现,包括输入子系统(Input Core),事件处理层(Event Handler)和设备驱动层.由于上节代码讲解了设备 ...

  3. linux kernel input 子系统分析

    Linux 内核为了处理各种不同类型的的输入设备 , 比如说鼠标 , 键盘 , 操纵杆 , 触摸屏 , 设计并实现了一个对上层应用统一的试图的抽象层 , 即是Linux 输入子系统 . 输入子系统的层 ...

  4. input子系统分析

    ------------------------------------------ 本文系本站原创,欢迎转载! 转载请注明出处:http://ericxiao.cublog.cn/ -------- ...

  5. Linux input子系统分析

    输入输出是用户和产品交互的手段,因此输入驱动开发在Linux驱动开发中很常见.同时,input子系统的分层架构思想在Linux驱动设计中极具代表性和先进性,因此对Linux input子系统进行深入分 ...

  6. input子系统学习笔记六 按键驱动实例分析下【转】

    转自:http://blog.chinaunix.net/uid-20776117-id-3212095.html 本文接着input子系统学习笔记五 按键驱动实例分析上接续分析这个按键驱动实例! i ...

  7. Linux input子系统编程、分析与模板

    输入设备都有共性:中断驱动+字符IO,基于分层的思想,Linux内核将这些设备的公有的部分提取出来,基于cdev提供接口,设计了输入子系统,所有使用输入子系统构建的设备都使用主设备号13,同时输入子系 ...

  8. 【驱动】input子系统整体流程全面分析(触摸屏驱动为例)【转】

    转自:http://www.cnblogs.com/lcw/p/3294356.html input输入子系统整体流程 input子系统在内核中的实现,包括输入子系统(Input Core),事件处理 ...

  9. 【驱动】input子系统全面分析

    初识linux输入子系统 linux输入子系统(linux input subsystem)从上到下由三层实现,分别为:输入子系统事件处理层(EventHandler).输入子系统核心层(InputC ...

随机推荐

  1. netcore中使用bower还原出错的解决方法

    近期BitAdminCore框架在创建时,还原bower包出现502错 打开地址,发现原为是因为bower服务调整导致的. 果断处理: 1.通过管理员模式,启动命令行 2.进入npm所在目录 3.执行 ...

  2. Android Dialog 的一些特性

    1. Dialog 与 AlertDialog 的区别. AlertDialog 是一种特殊形式的 Dialog.这个类中,我们可以添加一个,两个或者三个按钮,可以设置标题.所以,当我们想使用 Ale ...

  3. ansible 之条件语句 when

    注册变量: 变量的另一个用途是将一条命令的运行结果保存到变量中,供后面的playbook使用.例如: - hosts: webservers tasks: - shell: /usr/bin/foo ...

  4. 201621123023《Java程序设计》第11周学习总结

    一.本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. 二.书面作业 本次PTA作业题集多线程 1. 源代码阅读:多线程程序BounceThread 1.1 BallRun ...

  5. Syncthing源码解析 - 第三方库

    1,AudriusButkevicius/cli 网址:https://github.com/AudriusButkevicius/cli 2,bkaradzic/go-lz4 网址:https:// ...

  6. 【OCP-12c】CUUG 071题库考试原题及答案解析(24)

    24. choose the best answer In the EMPLOYEES table there are 1000 rows and employees are working in t ...

  7. zTree第二章,各种常见setting设置和方法

    具体详见API文档: http://www.treejs.cn/v3/api.php --------------------------------------------------------- ...

  8. PHP中define()和dirname(__FILE__)

    1,define() 函数定义一个常量.常量类似变量,不同之处在于: (1)在设定以后,常量的值无法更改 (2)常量名不需要开头的美元符号 ($) (3)作用域不影响对常量的访问 (4)常量值只能是字 ...

  9. docker微服务部署之:二、搭建文章微服务项目

    docker微服务部署之:一,搭建Eureka微服务项目 一.新增demo_article模块,并编写代码 右键demo_parent->new->Module->Maven,选择M ...

  10. php解析word,获得文档中的图片

    背景 前段时间在写一个功能:用原生php将获得word中的内容并导入到网站系统中.因为文档中存在公式,图片,表格等,因此写的比较麻烦. 思路 大体思路是先将word中格式为doc的文档转化为docx, ...