Android getevent
详细用法如下:
- Usage: getevent [-t] [-n] [-s switchmask] [-S] [-v [mask]] [-d] [-p] [-i] [-l] [-q] [-c count]
[-r] [device] - switchfor given
bits - switch
,
dev=, name=,
info=, vers=,
pos. events=, props=) - if
Usage: sendevent <device> <type> <code> <value>
首先,adb shell进入android设备,运行getevent命令得到如下信息,为各类事件的驱动设备,每部
- add device :
/dev/input/event1 - :
/dev/input/event3 - :
/dev/input/event2 - :
/dev/input/event5 - for /dev/input/mice,
Not a typewriter - :
/dev/input/event0 - :
/dev/input/event4
在点击设备屏幕之后得到:
- /dev/input/event0: 000002a5
- 0000017b
- 000001cf
- 003a
0000001c - ffffffff
type: 输入设备类型,在手机系统中经常使用的键盘(keyboard)和小键盘(kaypad)属于按键设
备EV_KEY,轨迹球属于相对设备EV_REL,触摸屏属于绝对设备EV_ABS
code: 按键扫描码,区别于ASCII码和SDK中KeyEvent的键码
value: 附加码,1/0 down/up
一次touch此8行是必须的,如果是longTouch呢,在touch的基础上,重复若干次第2~6行,即看起
来可能是这样子:
- /dev/input/event0: EV_ABS ABS_MT_TRACKING_ID 000002a6
如果是drag呢,在longTouch的基础上,xy坐标从起点到终点是渐变的,其他可认为一样。
所以清楚了之后,使用sendevent进行事件模拟就很轻松了,关键是从input.h中获取按键对应的扫
值得注意的是使用getevent获取的数值都是16进制的,而sendevent使用的是10进制的,需要进行
如点击坐标: 120,254
- sendevent /dev/input/event1 <---事件开始
- <---点击开始
- <--- 触摸范围
- <--- x坐标
- <--- y坐标
- <---点击结束(同步)
- <---事件结束
- <---事件同步
对于longTouch,重复几次上面提到的步骤,而drag再弄个坐标渐变。
模拟事件的话,可以转向input命令。
供的功能还不一样,但它毕竟好用啊,如下:
- usage: input ...
- input swipe <x1> <y1> <x2> <y2>
输入文本: input text abcdefg
按键 : input keyevent KEYCODE_MENU
点击 : input tap 100 300
拖拽 : input swipe 100 600 500 600
②对于longTouch,使用input如何模拟?
这是个难题
Android getevent的更多相关文章
- Android getevent用法详解
getevent 指令用于获取 input 输入事件,比如获取按键上报信息.获取触摸屏上报信息等. 指令源码路径:/system/core/toolbox/getevent.c getevent -h ...
- Android sendevent/getevent 用法
前言:最近在弄一个模拟用户点击屏幕的功能,并且不需要用户点击屏幕,后台自动给输入框赋值,类似pc端按键精灵的功能,在网上找了很多人的资料,写的都不是太详细,一知半解.还要自己慢慢研究.于是我这边写一篇 ...
- (转)使用getevent监听Android输入设备文件
尊重原创转载请注明:From AigeStudio(http://blog.csdn.net/aigestudio)Power by Aige 侵权必究! 炮兵镇楼 上一节Android事件分发完全解 ...
- Android自动化 -- sendevent/getevent 用法
getevent&sendevent 是android系统下的一个工具,可以 模拟 多种按键和触屏操作,产生的是raw event,raw event经过event hub处理产生最终的ges ...
- Android官方文档
下面的内容来自Android官方网站,由于访问这个网站需要FQ,不方便,所以我把部分内容copy下来了,不保证内容是最新的. Source Overview Codelines, Branche ...
- android键盘输入读取
android键盘输入读取 监控android键盘输入方式有两种,一种在java层实现,重写onKeyDown和onKeyUp方法.另一种是在jni层实现,监控/dev/input/event0键盘 ...
- Android的常用adb命令
第一部分:1. ubuntu下配置环境anroid变量:在终端执行 sudo gedit /etc/profile 打开文本编辑器,在最后追加#setandroid environment2. 运行E ...
- Android ADB 命令大全
1 cpu号: 文件在: /proc/cpuinfo 通过Adb shell 查看: adb shell cat /proc/cpuinfo 2 mac 地址 文件路径 /sys/class/net/ ...
- android遥控器的映射
第一编写kl文件时先在盒子上输入getevent -v查看设备信息,设备信息里有vendor.product.version, 假如分别是xxxx,yyyy,zzzz,那么你的文件名就要命名为Vend ...
随机推荐
- Java的“友好的”访问指示符(修饰符)
如果根本不指定访问指示符,就象本章之前的所有例子那样,这时会出现什么情况呢?默认的访问没有关键字,但它通常称为"友好"(Friendly)访问.这意味着当前包内的其他所有类都能访问 ...
- cnodejs社区论坛6--评论功能
- gcc shared object
介绍一个生成动态链接库*.so的例子: 首先新建1个头文件test.h: #include <stdio.h> void first(); void second(); void thir ...
- 2015年最佳的15个 Node.js 开发工具
Node.js 越来月流行,这个基于 Google V8 引擎建立的平台, 用于方便地搭建响应速度快.易于扩展的网络应用.在本文中,我们列出了2015年最佳的15个 Node.js 开发工具.这些工具 ...
- NodeBB – 基于 Node.js 的开源论坛系统
NodeBB 是一个更好的论坛平台,专门为现代网络打造.它是免费的,易于使用. NodeBB 论坛软件是基于 Node.js 开发,支持 Redis 或 MongoDB 的数据库.它利用 Web So ...
- [deviceone开发]-土地销售App开源
一.简介 这个是一个真实项目改造开源,虽然不是很花哨,但是中规中矩,小细节处理的也很好,非常值得参考和借鉴.里面的数据都缓存到本地,可以离线运行,但是调整一下代码,马上就可以和服务端完全对接.后续会有 ...
- JavaScript基础17——js的Date对象
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- javascript --- 原型初探七日谈(三)
原型陷阱: 在处理原型问题上时,我们要注意两种行为. 1. 当我们对原型对象执行完全替换的时候,有可能会触发原型链的某种异常. 2. prototype.constructor 属性是不可靠的. 下面 ...
- ae_将面积小于1500的Feature同附近Feature进行合并
private void 合并1500图斑ToolStripMenuItem_Click(object sender, EventArgs e) { /* *将图层中面积小于1500的图斑与之相同BS ...
- SharePoint 2013 列表关于大数据的测试<二>
1.给测试列表添加查阅项字段,100个,代码如下: 2.插入测试数据的方法,注意查阅项字段的格式,代码如下: 3.插入10w条数据,时间花费如下(不建议List[LISTNAME].Items.Add ...