2016-08-01 33 views
1

我使用命令adb shell su -- getevent -lt /dev/input/event5 > Test.txt來記錄觸摸事件。它在我觸摸屏幕時起作用,即它寫入所有動作(按下鍵,移動按鍵並用座標鍵)。使用Adb輸入時記錄按鍵事件

但是,當我使用命令adb shell input tap x y來模擬觸摸時,即使設備獲取事件(例如應用程序已打開),但在日誌文件中,也沒有關於該敲擊的日誌行。

如何記錄模擬adb的關鍵事件觸摸?

回答

2

你不是看到在getevent輸出的input tap事件的原因是sendevent,並與Linux內核的輸入事件getevent工作和input命令注入事件直接進入Android的輸入事件隊列。

This (old but still useful) article有一些很好的圖解說明Android中的輸入事件傳播。

不幸的是,沒有簡單的(隨時可用)方式來做你所要求的。我能想到的最接近的是使用dumpsys input命令 - 它顯示RecentQueue:部分中的最後10個輸入事件(包括由input命令注入的事件)。

+0

啊謝謝你的回答。我嘗試過'adb shell dumpsys input',它工作。它會根據需要獲取日誌。 – GAVD