【发布时间】:2014-05-22 03:04:55
【问题描述】:
我想按住相机按钮以连续拍摄。我试过这段代码:
#!/system/bin/sh
am start -n com.android.camera2/com.android.camera.CameraLauncher
sleep 1
count=1
x=2
while [ $count -le 1 ]
do
input touchscreen tap 560 1800
input touchscreen tap 560 1800
input touchscreen tap 560 1800
input touchscreen tap 560 1800
input touchscreen tap 560 1800
input touchscreen tap 560 1800
input touchscreen tap 560 1800
input touchscreen tap 560 1800
done
但它不按住按钮。它会延迟点击。
然后我尝试了这个:
sendevent /dev/input/event0 3 53 300
sendevent /dev/input/event0 3 54 400
sendevent /dev/input/event0 3 48 5
sendevent /dev/input/event0 3 58 50
sendevent /dev/input/event0 0 2 0
sendevent /dev/input/event0 0 0 0
sleep 1
sendevent /dev/input/event0 0 2 0
sendevent /dev/input/event0 0 0 0
此代码已执行,但在触摸屏上看不到效果
【问题讨论】:
-
这是我尝试的第二个代码。由于某种原因,代码没有正确缩进 sendevent /dev/input/event0 3 53 300 sendevent /dev/input/event0 3 54 400 sendevent /dev/input/event0 3 48 5 sendevent /dev/input/event0 3 58 50 sendevent /dev/input/event0 0 2 0 sendevent /dev/input/event0 0 0 0 sleep 1 sendevent /dev/input/event0 0 2 0 sendevent /dev/input/event0 0 0 0
-
您的问题没有通用的解决方案。设备有不同的 /dev/input 定义。如果你有 root 设备,你可以使用 WindowsManager 的内部 API 在 Java 级别注入事件。
-
您的第二次尝试看起来像我在此处stackoverflow.com/a/17263093/1778421 的答案中的代码 - 您为什么不转到该答案中链接的页面?
标签: android button adb keypress