Android组合按键功能定制(Framework)
16lz
2021-12-04
Android组合按键功能定制(Framework)
涉及文件
alps/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
修改位置
interceptKeyBeforeQueueing函数中
示例代码
isF1Pressed为自定义变量
if (event.getAction() == KeyEvent.ACTION_DOWN) { if (event.getKeyCode() == KeyEvent.KEYCODE_F1) { isF1Pressed = true; } else if (isF1Pressed) { int currentBLLevel = adioGetBLLevel(); int keyValue = event.getKeyCode(); if (keyValue == KeyEvent.KEYCODE_DPAD_UP) { //F1 和 上键组合 } else if (keyValue == KeyEvent.KEYCODE_DPAD_DOWN) { //F1 和 下键组合 } } } else if (event.getAction() == KeyEvent.ACTION_UP) { if (event.getKeyCode() == KeyEvent.KEYCODE_F1) { isF1Pressed = false; } }
追加:
可以在组合键处,利用Instrumentation模拟按键发放,可自定义向应用层发送按键。
萌新,欢迎讨论。
更多相关文章
- Android平台开发-Android(安卓)keypad map-Android按键事件
- [翻译] Android(安卓)+ TensorFlow机器学习示例
- Android平台开发-Android(安卓)keypad map-Android按键事件
- Android之Input子系统事件分发流程
- Android文件读写简单示例
- Android读写文件示例
- Android(安卓)的网络编程(5)-通过ksoap2调用webservice示例
- Android追加写入文件的几种方法
- 我的Android计算器