程序開發的過程中有時候會遇到模擬按鍵和模擬touch的事件:
1,模擬touch事件:
public void SetTouch(float x,float y){ Instrumentation inst = new Instrumentation(); MotionEvent e = MotionEvent.obtain(SystemClock.uptimeMillis(),SystemClock.uptimeMillis(),MotionEvent.ACTION_DOWN,x,y,0); inst.sendPointerSync(e); e = MotionEvent.obtain(SystemClock.uptimeMillis(),SystemClock.uptimeMillis(),MotionEvent.ACTION_UP,x,y,0); inst.sendPointerSync(e); }
2.模擬按鍵:
public void TouchHome(){ int keycode = KeyEvent.KEYCODE_HOME; Instrumentation instrumentation = new Instrumentation(); instrumentation.sendCharacterSync(keycode); }
在使用模擬touch和模擬按鍵的時候要使用下面的權限:
<uses-permission android:name="android.permission.INJECT_EVENTS" />