안드로이드 터치, 스크롤 이벤트 발생하기
안드로이드에서 터치나 스크롤 이벤트를 발생시키기 위해서는 루팅을 한 뒤 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())});
이런 식으로 구현하면 된다.
댓글
댓글 쓰기