我不確定如果通過adb注入事件的問題應該在StackOverflow或Android Enthusiasts中,請移動它,如果它沒有不屬於這裏。解釋「cat/proc/bus/input/devices」和adb shell命令的結果
無論如何,我的問題如下。
我顯然必須確定發送和接收事件的「類型」設備。我不能明確地向鍵盤設備發送觸摸事件。
經過大量的研究,我發現了sendevent
和getevent
命令。
所以,我想長時間按下電話的電源按鈕。
我用這個目前:
sendevent /dev/input/event3 1 116 0
sendevent /dev/input/event3 1 116 1
這個工程上HTC Wildfire(點擊的鏈接輸入設備上),因爲鍵盤包含了電源按鈕和116
恰好是電源鍵掃描碼。
我知道什麼/dev/input/event3/
和116
和0 or 1
代表。 1
介於/dev/input/event3/
和116
之間代表什麼?我如何獲得它?
移至Nexus 4。現在,我已經注意到,它有一個獨立的powerkey和鍵盤處理器
[編輯]
找到this關於在XDA sendevent
和getevent
。
我在哪裏可以檢索特定設備的'EV_KEY'? –
EV_KEY = 1.它是一個linux內核常量。它自成立以來一直沒有改變,我懷疑它將來會改變。 'getevent -pl'輸出中的'KEY(0001):'行只是表示'EV_KEY = 0x0001'的簡短方式。 –
非常感謝!我弄清楚了getevent位。我不知道發送實際命令會有什麼不同。假設'sendevent/dev/input/eventX 0 0 0'是'sleep 1'。我的錯。 –