android 模擬按鍵

程序開發的過程中有時候會遇到模擬按鍵和模擬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" />
 

猜你喜欢

转载自bgj.iteye.com/blog/1742882