我有一个 Android 电视盒,我想通过 ADB 命令控制它。特别是,我想在它上面发送“点击”事件。到目前为止,我一直在通过“adb shell input tap x,y”来做到这一点,它工作得很好,但速度太慢了。所以我试图通过“adb shell sendevent ...”来做到这一点,我认为这更快。
我已经遵循了几个关于如何做到这一点的教程,但我面临的问题是我无法记录哪个是事件序列,以便向我的设备发送简单的单击。
这是我到目前为止所做的。为了获取事件序列,我尝试使用“getevent”命令获取它们:
q201:/ # getevent -l
add device 1: /dev/input/event4
name: "HID 04b3:310b"
could not get driver version for /dev/input/mouse1, Not a typewriter
add device 2: /dev/input/event3
name: "cec_input"
could not get driver version for /dev/input/mice, Not a typewriter
add device 3: /dev/input/event2
name: "gpio_keypad"
add device 4: /dev/input/event1
name: "adc_keypad"
could not get driver version for /dev/input/mouse0, Not a typewriter
add device 5: /dev/input/event0
name: "aml_keypad"
当我单击鼠标左键时,我会看到此事件:
/dev/input/event4: EV_MSC MSC_SCAN 00090001
/dev/input/event4: EV_KEY BTN_MOUSE DOWN
/dev/input/event4: EV_SYN SYN_REPORT 00000000
/dev/input/event4: EV_MSC MSC_SCAN 00090001
/dev/input/event4: EV_KEY BTN_MOUSE UP
/dev/input/event4: EV_SYN SYN_REPORT 00000000
不再生成事件。每次单击鼠标时,都会生成相同的事件。相同的代码。相同的价值观。总是一样 !
那么......我点击的坐标在哪里?为什么我没有收到关于我点击的位置的任何事件?实际上,点击在设备上有效,所以..事件在哪里?如果没有该事件,我将无法使用sendevent命令重现单击。
谢谢你的支持!公克