Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android getevent和sendevent:如何从Windows命令窗口执行记录的事件?_Android_Batch File_User Interface_Adb - Fatal编程技术网

Android getevent和sendevent:如何从Windows命令窗口执行记录的事件?

Android getevent和sendevent:如何从Windows命令窗口执行记录的事件?,android,batch-file,user-interface,adb,Android,Batch File,User Interface,Adb,我已经记录了在Android 4.4.2上玩UI时触发的事件 这是我在Windows命令提示符下执行的命令: adb shell getevent > capturedevents.txt 然后,我通过“解析器”运行.txt文件,该解析器生成一个bat文件: modifiedeventfile.bat 当我尝试从Windows命令提示符执行bat文件时,手机上不会发生任何事情,如果我运行: adb shell getevent > response.txt 当我执行bat文件时

我已经记录了在Android 4.4.2上玩UI时触发的事件

这是我在Windows命令提示符下执行的命令:

adb shell getevent > capturedevents.txt
然后,我通过“解析器”运行.txt文件,该解析器生成一个bat文件:

modifiedeventfile.bat
当我尝试从Windows命令提示符执行bat文件时,手机上不会发生任何事情,如果我运行:

adb shell getevent > response.txt
当我执行bat文件时,我只得到以下信息:

/dev/input/event1: 0003 0035 00000000
/dev/input/event1: 0003 0036 00000000
/dev/input/event1: 0003 0000 00000000
/dev/input/event1: 0003 0001 00000000
/dev/input/event1: 0000 0000 00000000

/dev/input/event1: 0003 0039 00000000
/dev/input/event1: 0000 0000 00000000
响应表示手机仅响应前2个“命令”(其中“命令”以0结尾)

我做错了什么

我希望能够捕捉/记录手机上的事件,并通过执行bat文件“播放”它们

以下是下载我所指文件的一些链接:


链接为空,因此我无法验证您的方法

您是否通过adb发送记录的事件?例如,
adb shell sendevent/dev/input/event1:0003 0035 00000000
如果没有,则更改解析器,在capturedevents.txt中的每行前面添加字符串
adb shell sendevent
,然后通过adb发送

顺便说一句,有时,您需要通过ping添加小延迟。例如:ping 192.0.2.2-N1-W1000>nul

编辑:


它是在三星Galaxy S4上录制的

是的,我通过adb发送事件。您可以发布以下示例:1)导航到屏幕上的某个(X,Y)坐标,其中有一个UI按钮2)问题按下按钮3)按住按钮1秒4)释放按钮无最后一个问题:如何执行adb外壳命令序列?您是否从adb shell一次执行一个命令?还是将包含所有命令的文件传输到SD卡,然后执行该文件?如果是,怎么做?您如何记录事件(并解析记录的数据)?上面的代码是功能齐全的批处理脚本。我向android设备发送一个又一个命令(我在PC上运行批处理脚本)。最重要的部分是模拟按压时间的延迟(ping)。我手动解析了记录的数据(您必须弄清楚如何执行解析脚本)。getevent输出对于不同的设备(Galaxy S3、S4、Note3等)是不同的。首先,定义哪个事件代表触摸屏。第二,哪些消息代表点击/按下/xy(尝试用谷歌搜索)。我需要将其从event1更改为event3吗?我已经按照步骤捕获了一个刷卡事件,但无法使其正常工作。。
:: open keaypad
adb shell input keyevent 5
adb shell input tap 120 150
:: press the button 'DEL'
adb shell sendevent /dev/input/event3 0003 57 48
adb shell sendevent /dev/input/event3 0001 330 1
adb shell sendevent /dev/input/event3 0003 53 870
adb shell sendevent /dev/input/event3 0003 54 1785
adb shell sendevent /dev/input/event3 0003 48 6
adb shell sendevent /dev/input/event3 0003 49 6
adb shell sendevent /dev/input/event3 0003 50 1
adb shell sendevent /dev/input/event3 0003 60 4294967206
adb shell sendevent /dev/input/event3 0000 0000 0
ping 192.0.2.2 -n 1 -w 1000 > nul
:: release the button
adb shell sendevent /dev/input/event3 0003 57 4294967295
adb shell sendevent /dev/input/event3 0001 330 0
adb shell sendevent /dev/input/event3 0000 0 0