gpt4 book ai didi

android - 在/dev/input/eventX 中写入事件需要什么命令?

转载 作者:太空宇宙 更新时间:2023-11-03 13:49:55 24 4
gpt4 key购买 nike

我正在开发一个需要将触摸事件发送到/dev/input/eventX 的 android 应用程序。我知道执行此类操作的 C 代码结构如下:

struct input_event {
struct timeval time;
unsigned short type;
unsigned short code;
unsigned int value;
};

要使用这样的代码,我需要设置NDK。相反,我想在 android 中使用 Runtime.getRunTime.exec () 运行等效的 linux 命令,而无需使用 NDK。有什么办法吗?

如果不是,发送事件所需的其余 C 代码是什么?例如,如何将 x=200 和 y=300 处的触摸事件发送到 event0?我进行了搜索,但没有找到明确的解决方案。

谢谢。

最佳答案

我不清楚为什么你需要直接发送事件到/dev/input/eventX。但如果它可以通过 adb 发送,您可以向设备注入(inject)许多类型的事件。

在你的电脑上试试这个:

adb shell 输入 tap 200 300

或者在你的 android 设备外壳上:

输入抽头 200 300

但由于外部注入(inject),延迟很高。

有关input 命令的更多信息,请参见此处。

Usage: input [<source>] <command> [<arg>...]

The sources are:
mouse
keyboard
joystick
touchnavigation
touchpad
trackball
stylus
dpad
touchscreen
gamepad

The commands and default sources are:
text <string> (Default: touchscreen)
keyevent [--longpress] <key code number or name> ... (Default: keyboard)
tap <x> <y> (Default: touchscreen)
swipe <x1> <y1> <x2> <y2> [duration(ms)] (Default: touchscreen)
press (Default: trackball)
roll <dx> <dy> (Default: trackball)

关于android - 在/dev/input/eventX 中写入事件需要什么命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36372488/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com