Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.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 如何使用adb发送长按键事件?_Android_Adb - Fatal编程技术网

Android 如何使用adb发送长按键事件?

Android 如何使用adb发送长按键事件?,android,adb,Android,Adb,我可以使用类似于: adb shell input keyevent 4 这将向我的设备发送一个“后退”按钮。我怎样才能寄一张长报纸 谢谢好的,显示键码是128,我已经测试过了,但是没有预期的结果 您可以检查链接和链接。它们显示了如何找到它。讨论了一个类似的问题,但该设备(Nexus One设备)的菜单/主页/返回/搜索按钮是触摸屏的一部分,而不是物理键 似乎与注入物理键输入更为内联,但需要访问设备驱动程序的*.kl文件,以确定特定设备的设备、类型、键代码、按下值和释放值代码 然而,两者之间的

我可以使用类似于:

adb shell input keyevent 4
这将向我的设备发送一个“后退”按钮。我怎样才能寄一张长报纸

谢谢

好的,显示键码是128,我已经测试过了,但是没有预期的结果

您可以检查链接和链接。它们显示了如何找到它。

讨论了一个类似的问题,但该设备(Nexus One设备)的菜单/主页/返回/搜索按钮是触摸屏的一部分,而不是物理键

似乎与注入物理键输入更为内联,但需要访问设备驱动程序的*.kl文件,以确定特定设备的设备、类型、键代码、按下值和释放值代码

然而,两者之间的共同联系似乎是

adb shell sleep n
,其中n是按下持续时间的长度(以秒为单位)


希望这可能有用。

您可以尝试以下命令:

adb shell input touchscreen swipe 170 187 170 187 2000
您在屏幕上的应用程序位置是 170, 187; 延迟时间为2000(ms)

长按HOME键:

adb shell sendevent /dev/input/event2 1 172 1
adb shell sendevent /dev/input/event2 0  0 0
timeout 1
adb shell sendevent /dev/input/event2 1 172 0
adb shell sendevent /dev/input/event2 0  0 0
您可以转到cmd并键入adb shell getevent |查找“event2”;长按HOME键查看更多信息。

因为在Android 4.4中,可以使用:

adb shell input keyevent --longpress KEYCODE_L

进一步改善了行为。

回答这个问题可能为时已晚,但肯定会帮助其他人

请使用下面的命令来实现长按


adb shell input keyevent 5 sleep 5

当您想要删除某些内容、重复某些事件或只是输入大量数字时,可以使用如下代码。它将模拟键盘上的长按:

adb shell input keyevent KEYCODE_FORWARD_DEL KEYCODE_FORWARD_DEL KEYCODE_FORWARD_DEL //delete 3 times


adb shell input keyevent KEYCODE_1 KEYCODE_1 KEYCODE_1 //input value '111'

您可以无限制地重复事件或输入内容,就像长按按键一样。是一样的。您现在可以定义自己的长传球和时间

@whoabackoff如果发送标志和键码的OR?@chr,则键码返回(4)或键码长按(128)的值为132,这正好是键码F2(132)的值。这不起作用。请分享问题陈述,我将提供解决方案。adb外壳输入键事件5;睡觉对我一点用都没有。当我使用getevent时,我在按键时看到的是
event0
,而不是
event2
。像0、1、172这样的数字是什么意思?你能给我一个链接,作为了解这些数字的参考,以及我们应该如何应用这些数字的方法发现这对长时间按电源键很有用这是唯一对我有效的可靠删除长字符串的方法-谢谢!