美文网首页
android P添加系统返回按键按下广播

android P添加系统返回按键按下广播

作者: l900 | 来源:发表于2019-11-04 11:07 被阅读0次

\frameworks\base\core\java\android\view\KeyEvent.java
下查找对应的键值
例如:
public static final int KEYCODE_BACK = 4;

frameworks\base\services\core\java\com\android\server\policy\PhoneWindowManager.java下添加 广播接收app调用
BroadcastReceiver mBackReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if ("com.starmini.receiver.back".equals(intent.getAction())) {
execShellCmd(" input keyevent 4");
Log.d("1900","starmini back click");
}
}
};

//add by 1900
private void execShellCmd(String cmd) {
try {
// 申请获取root权限
java.lang.Process process = Runtime.getRuntime().exec("su");
// 获取输出流
OutputStream outputStream = process.getOutputStream();
DataOutputStream dataOutputStream = new DataOutputStream(
outputStream);
dataOutputStream.writeBytes(cmd);
dataOutputStream.flush();
dataOutputStream.close();
outputStream.close();
} catch (Throwable t) {
t.printStackTrace();
}
}

init方法中注册广播
filter = new IntentFilter("com.starmini.receiver.back");
context.registerReceiver(mBackReceiver, filter);

谢谢
1900 20191104 starmini

相关文章

网友评论

      本文标题:android P添加系统返回按键按下广播

      本文链接:https://www.haomeiwen.com/subject/icwrbctx.html