我想发送“ctrl+w”到android的chrome来关闭活动选项卡。我尝试了很多事情,但没有成功的实现它从终端。(如果我用otg连接usb键盘,我可以用ctrl+w关闭选项卡)首先,我不想为此编写应用程序,我只想使用tasker中的shell命令。我在某个地方读到过,为了达到这个目的(ctrl+w keypress),我必须像这样模拟按键:向下控制下W上W向上控制为了在终端上实现这一点,我似乎不得不使用“sendEvent”。我可以用“sendEvent”模拟所有的硬件按键,但不能用它模拟普通按键。例如,向下和向上到电源键:sendevent /dev/input/event1 1 116 1sendevent /dev/input/event1 0 0 0sendevent /dev/input/event1 1 116 0sendevent /dev/input/event1 0 0 0我使用这个命令,但是我不能用这个命令发送普通密钥。(例如A、B、C等)event1是gpio密钥,所以我使用它。所有其他的输入事件都是传感器,一个是充电驱动器。(最大77693 MUIC)“getevent-p”的输出表明:add device 1: /dev/input/event9 name: "compass_sensor" events: REL (0002): 0000 0001 0002 0003 0004 0005 0006 0007 0008 0009 input props: <none>add device 2: /dev/input/event6 name: "barometer_sensor" events: REL (0002): 0000 0001 0002 input props: <none>add device 3: /dev/input/event5 name: "light_sensor" events: REL (0002): 0000 0001 0002 0009 input props: <none>add device 4: /dev/input/event4 name: "proximity_sensor" events: ABS (0003): 0019 : value 1, min 0, max 1, fuzz 0, flat 0, resolution 0 input props: <none>add device 5: /dev/input/event3 name: "gyro_sensor" events: REL (0002): 0003 0004 0005 input props: <none>could not get driver version for /dev/input/mice, Not a typewriteradd device 6: /dev/input/event7 name: "Midas_WM1811 Midas Jack" events: KEY (0001): 0072 0073 00e2 SW (0005): 0002 0004 input props: <none>add device 7: /dev/input/event1 name: "gpio-keys" events: KEY (0001): 0072 0073 0074 00ac input props: <none>add device 8: /dev/input/event0 name: "max77693-muic" events: KEY (0001): 0072 0073 00a3 00a4 00a5 input props: <none>add device 9: /dev/input/event8 name: "sec_touchkey" events: KEY (0001): 008b 009e LED (0011): 0008 input props: <none>add device 10: /dev/input/event2 name: "sec_touchscreen" events: ABS (0003): 002f : value 0, min 0, max 9, fuzz 0, flat 0, resolution 0 0030 : value 0, min 0, max 255, fuzz 0, flat 0, resolution 0 0031 : value 0, min 0, max 255, fuzz 0, flat 0, resolution 0 0032 : value 0, min 0, max 30, fuzz 0, flat 0, resolution 0 0035 : value 0, min 0, max 719, fuzz 0, flat 0, resolution 0 0036 : value 0, min 0, max 1279, fuzz 0, flat 0, resolution 0 0039 : value 0, min 0, max 65535, fuzz 0, flat 0, resolution 0 003c : value 0, min -90, max 90, fuzz 0, flat 0, resolution 0 003d : value 0, min 0, max 1, fuzz 0, flat 0, resolution 0 input props: INPUT_PROP_DIRECT还有我的gpio keys layout file“/system/usr/keylayout/gpio keys.kl”,如下所示:key 115 VOLUME_UP WAKEkey 114 VOLUME_DOWN WAKEkey 116 POWER WAKEkey 172 HOME WAKE我可以通过以下方式发送所有正常的密钥事件:"input keyevent KEYCODE_X"发送多个:"input keyevent KEYCODE_X KEYCODE_Y"你应该认为它可以这样工作:"input keyevent KEYCODE_CTRL_LEFT KEYCODE W"但是keyevent可以立即上下移动,我不能用它来发送ctrl+w组合。我知道,答案应该是“sendEvent”。但我找不到。我还尝试在密钥布局文件中添加一些假密钥,如下所示:key 115 VOLUME_UP WAKEkey 114 VOLUME_DOWN WAKEkey 116 POWER WAKEkey 172 HOME WAKEkey 19 Q我重新启动电话,然后尝试:sendevent /dev/input/event1 1 19 1sendevent /dev/input/event1 0 0 0sendevent /dev/input/event1 1 19 0sendevent /dev/input/event1 0 0 0但它从不在任何文本框中写入“q”。请帮忙,谢谢你的帮助。 最佳答案 哦,是的!!我不知道为什么,但每当我觉得卡住了,我来斯塔克溢出,一旦我开始写的问题,不知怎的我找到了答案…除息的不管怎样,我是通过以下程序做到的:转到/system/usr/keylayout/在我的例子中,没有gpio密钥,总之是open generic.kl它有所有的关键代码,你需要模拟任何东西…例如,对于ctrl_right keycode为97,对于w keycode为17这就是您所需要的,现在打开tasker-->新建任务-->添加等待5秒-->运行shell:现在运行命令并快速打开chrome,瞧!5秒钟后你就会看到你的账单消失了!希望这能帮助所有未来的任务专家;)荣誉…