adb shell getevent
Usage: getevent [-t] [-n] [-s switchmask] [-S] [-v [mask]] [-d] [-p] [-i] [-l] [-q] [-c count] [-r] [device]
-t: show time stamps
-n: don't print newlines
-s: print switch states for given bits
-S: print all switch states
-v: verbosity mask (errs=1, dev=2, name=4, info=8, vers=16, pos. events=32, props=64)
-d: show HID descriptor, if available
-p: show possible events (errs, dev, name, pos. events)
-i: show all device info and possible events
-l: label event types and names in plain text
-q: quiet (clear verbosity mask)
-c: print given number of events then exit
-r: print rate events are received
add device 1: /dev/input/event7
name: "magnetic_sensor"
add device 2: /dev/input/event6
name: "accelerometer_sensor"
add device 3: /dev/input/event5
name: "light_sensor"
add device 4: /dev/input/event4
name: "proximity_sensor"
add device 5: /dev/input/event3
name: "qpnp_pon"
could not get driver version for /dev/input/mouse0, Not a typewriter
add device 6: /dev/input/event2
name: "hbtp_vm"
add device 7: /dev/input/event0
name: "meta_event"
could not get driver version for /dev/input/mice, Not a typewriter
add device 8: /dev/input/event1
name: "sec_touchscreen"
add device 9: /dev/input/event9
name: "hall"
add device 10: /dev/input/event8
name: "gpio-keys"
add device 11: /dev/input/event10
name: "sec_touchkey"
adb shell getevent -lt
핸드폰으로 확인해보니 센서값들이 실시간으로 와랄랄라 들어와서 이벤트 필터링이 필요할 것 같네요.
cmd에서 getevent 명령어를 실행해 놓고 단말을 클릭하면 cmd창에 이벤트가 주욱주욱 찍히는것을 확인할 수 있다.
이게 어떤 좌표로 클릭/스와이프/롱클릭 되고있는지 알려면 좀 더 학습이 필요하긴한데 패턴을 찾는건 귀찮으니깐 남들이 만들어놓은 오픈소스(파서만 잘 뜯어 보면 될 듯)를 참고하자.
github.com/gersseba/android-touchlogger
아 참 그리고 이 이벤트로 input 명령어를 날리면 해당 이벤트를 실행시키기 때문에 단말 제어도 가능함.
아 참 또, 장비별로 event번호별 실제 동작하는 이벤트는 상이할 수 있으니 체크해야함.
반응형
'SW Programming > Android' 카테고리의 다른 글
sonarLint / Android의 코루틴 권장사항 (0) | 2022.08.08 |
---|---|
[Android] 중첩된 리스트 사용시 스크롤 민감도 조절해보기(가로, 세로 스크롤) (0) | 2022.05.20 |
IOS 안드로이드 스튜디오 업데이트 오류 해결 (0) | 2017.06.15 |
리사이클러 뷰 RecyclerView 정리 (0) | 2017.04.26 |
(안드로이드) 키보드 사라지게 하기 (0) | 2017.03.07 |
댓글