안드로이드 터치, 스크롤 이벤트 발생하기
안드로이드에서 터치나 스크롤 이벤트를 발생시키기 위해서는 루팅을 한 뒤 MotionEvent 를 이용해야 한다.
그런데 MotionEvent.obtain 을 이용해서 터치를 시뮬레이션하는게 꽤나 골치아픈 일인지라, 이보다는 안드로이드가 리눅스 기반이라는 점을 이용해서 시스템 명령어를 쓰는 게 훨씬 간편하다.
http://www.programering.com/a/MDO3kzMwATQ.html
를 참고하여,
스크롤 이벤트 :
터치 이벤트 :
이런 식으로 구현하면 된다.
그런데 MotionEvent.obtain 을 이용해서 터치를 시뮬레이션하는게 꽤나 골치아픈 일인지라, 이보다는 안드로이드가 리눅스 기반이라는 점을 이용해서 시스템 명령어를 쓰는 게 훨씬 간편하다.
http://www.programering.com/a/MDO3kzMwATQ.html
를 참고하여,
스크롤 이벤트 :
Runtime.getRuntime().exec( new String[] {"/system/bin/input", "swipe", Integer.toString(fromX), Integer.toString(fromY), Integer.toString(toX), Integer.toString(toY), "500"});
터치 이벤트 :
Rect bounds = new Rect(); node.getBoundsInScreen(bounds); Runtime.getRuntime().exec(new String[] {"/system/bin/input", "tap", String.valueOf(bounds.centerX()) , String.valueOf(bounds.centerY())});
이런 식으로 구현하면 된다.
댓글
댓글 쓰기