有谁知道getevent的输出意味着什么?

pyp*_*ies 13 android touch event-log adb

我试图找出adb shell中getevent命令的输出格式.

例如,输出如下所示:

adb shell getevent -t | grep event1

-t标志提供时间戳,grep用于仅将消息过滤到触摸屏的事件.

22779-197145:/ dev/input/event1:0003 003a 00400001

22779-197999:/ dev/input/event1:0003 0039 82c30a97

22779-218477:/ dev/input/event1:0003 003a 00390001

22779-219301:/ dev/input/event1:0003 0039 82c30aa4

22779-230623:/ dev/input/event1:0003 003a 002f0001

22779-231416:/ dev/input/event1:0003 0039 82c10aae

22779-242769:/ dev/input/event1:0003 003a 00190001

22779-243623:/ dev/input/event1:0003 0039 82c60ac1

22779-253328:/ dev/input/event1:0003 003a 00000002

22779-254213:/ dev/input/event1:0003 0039 82da0ae4

22779-415590:/ dev/input/event1:0003 003a 00000000

22779-416444:/ dev/input/event1:0003 0039 800b1549

问题是我不知道如何处理这些信息.虽然秒最后一个字段在两个代码之间交替(已建议对应于X和Y值),但最后一个字段似乎包含巨大或非常小的数字.

此外,时间戳对我来说也很陌生.我想知道冲刺后的部分是否是纳秒?

有谁知道我在哪里可以找到这些东西的格式?

Mar*_*ski 12

/dev/input/eventX所使用的evdev是通用的输入事件的处理层的事件的Linux内核子系统并将其传递到时间戳的应用程式.您可以尝试使用getevent工具获取更多人类可读的输出,如下所示:

$ adb shell getevent -lp /dev/input/event1
Run Code Online (Sandbox Code Playgroud)

要获得所有getevent选项,请执行以下操作:

$ adb shell getevent --help
Run Code Online (Sandbox Code Playgroud)

你可以阅读更多有关getevent的工具在这里和关于evdev 维基.

根据内核消息来源,evdev使用纳秒分辨率时间格式(ktime),如果您想在线查看,则源linux/next/include/linux/ktime.h在此处.

  • [getevent sources](http://code.metager.de/source/xref/android/4.0.4/system/core/toolbox/getevent.c#645)也许有用. (3认同)