模拟系统按键

项目需要一个悬浮框的返回键,如下两种都可以实现,但需要系统权限和签名.
android:sharedUserId="android.uid.system"
方法1:

public void onBack(){
new Thread(){
public void run() {
try{
Instrumentation inst = new Instrumentation();
inst.sendKeyDownUpSync(KeyEvent.KEYCODE_BACK);
}catch (Exception e) {
Log.e("Exception when onBack", e.toString());
}
}
}.start();
}
注意该方法不能放在主线程中,否则会报错。
方法2:
try{
Runtime runtime=Runtime.getRuntime();
runtime.exec("input keyevent " + KeyEvent.KEYCODE_BACK);
}catch(IOException e){
Log.e("Exception when doBack", e.toString());
}

你可能感兴趣的:(模拟系统按键)