[Android6.0][RK3399] 修改默认按键 KEY-PAD 的功能
来源:互联网 发布:导航网站用什么域名好 编辑:程序博客网 时间:2024/05/21 19:36
Platform: RK3399
OS: Android 6.0
Kernel: 4.4
Version: v2017.04
- 需求
- Key-Pad 原理
- 实现
- getevent 获得键值
- 修改按键功能
- 验证
- 其他方法
需求
需求是将 Menu 键修改为 Home 键。
Key-Pad 原理
按键部分原理图如下
可以看到不同按键串联的电阻值也不同。所以按下不同按键时 ADKEY_IN 的检测电压也会不同(不同阻值分压不同),平台端设计好接收不同电压时对应的功能,就实现了功能按键。
实现
getevent 获得键值
adb shellgetevent
可以看到我们的 key pad 设备
按下我们需要修改的按键(现在的 MENU 键)
获得键值 0x003b,即 10 进制的 59
修改按键功能
在 SDK/device/rockchip/common/rk29-keypad.kl 修改
vi SDK/device/rockchip/common/rk29-keypad.kl-key 59 MENU+key 59 HOME-key 102 HOME+key 102 MENUkey 114 VOLUME_DOWNkey 115 VOLUME_UPkey 116 POWER WAKEkey 143 NOTIFICATION WAKEkey 158 BACKkey 212 CAMERAkey 217 SEARCH
我们把 key 59 的功能改为 MENU
验证
按键生效。
其他方法
另外 adb pull /system/usr/keylayout/rk29-keypad.kl
修改后直接 push 进去也可以完成任务。
0 0
- [Android6.0][RK3399] 修改默认按键 KEY-PAD 的功能
- [Android6.0][RK3399] 关闭双击 Power 打开 Camera 功能
- [Android6.0][RK3399] 实现耳机和喇叭自动切换功能
- [Android6.0][RK3399] TypeC 基础知识
- [RK3399][Android6.0] 系统支持的重启模式
- [Android6.0][RK3399] 电池系统(二)BQ IC 添加 DC 充电功能
- [Android6.0][RK3399] IR(红外线)移植步骤
- [Android6.0][RK3399] PWM Backlight 驱动分析
- 基于Android6.0源码修改屏蔽系统下方的虚拟按键以及上方的状态栏
- [Android6.0][RK3399] 电池系统(四)不插电池无法开机的问题
- MTK6735(Android6.0)-按键灯的实现
- MTK6735(Android6.0)-按键灯的实现
- [RK3288][Android6.0] 按键(MediaButton)控制音乐播放功能
- [RK3288][Android6.0] 调试笔记 --- 修改系统按键
- [Android6.0][RK3399] USB接口Touchscreen驱动流程分析
- [Android6.0][RK3399] 隐藏导航栏或状态栏
- [Android6.0][RK3399] 串口无法输入输出 串口打印乱码
- [Android6.0][RK3399] 去掉滑动锁屏(swipe lock)
- [BZOJ 2729][HNOI2012]排队:高精度+组合数
- opencv_annotation使用指南
- Unix哲学之软件的杠杆效应
- NuttX U盘驱动
- nyoj-最少步数
- [Android6.0][RK3399] 修改默认按键 KEY-PAD 的功能
- 1006. 换个格式输出整数
- 通过SharedPreferences实现记住密码
- MySQL中表的创建
- String类不可变性的好处
- 把JSP放到WEB-INF后以保护JSP源代码
- activeMQ框架的学习(二)
- 数组1
- 20170414