Android4.4.2系统添加自定义按键【转】
本文转载自:http://developer.t-firefly.com/thread-251-1-1.html
网上存在一些关于Android系统添加自定义按键的文章,但大多针对Android2.3和4.0系统的,许多文件都已经变动位置了,这两天我总结了一些,写出来欢迎大家交流与指正:
Android系统通过*.kl文件将Linux按键传给上层,最新的Android4.4已经不再默认qwerty.kl文件了,代之的是frameworks/base/data/keyboards/Generic.kl文件,当然如果定义板级键值文件,还是以rk29-keypad.kl文件优先。
- key 59 MENU
- key 102 HOME
- key 114 VOLUME_DOWN
- key 115 VOLUME_UP
- key 116 POWE WAKE
- key 143 NOTIFICATION WAKE
- key 158 BACK
- key 212 CAMERA
- key 217 SEARCH
复制代码
- &adc {
- status = "okay";
- key {
- compatible = "rockchip, key";
- io-channels = <&adc 1>;
- vol-up-key {
- linux, code = <115>;
- label = "volume up";
- rockchip, adc_value = <1>;
- };
- vol-down-key {
- linux, code = <114>;
- label = "volume down";
- rockchip, adc_value = <170>;
- };
- power-key {
- gpios = <&gpio0 GPIO_A4 GPIO_ACTIVE_LOW>;
- linux, code = <116>;
- label = "power";
- gpio-key, wakeup; // 具有唤醒功能
- };
- menu-key {
- linux, code = <139>;
- label = "menu";
- rockchip, adc_value = <355>;
- };
- home-key {
- linux, code = <102>;
- label = "home";
- rockchip, adc_value = <746>;
- };
- back-key {
- linux, code = <158>;
- label = "back";
- rockchip, adc_value = <560>;
- };
- camera-key {
- linux, code = <212>;
- label = "camera";
- rockchip, adc_value = <450>;
- };
- };
复制代码
改KeycodeLabels.h文件,4.4版本将其移到了frameworks/native/include/input目录下,对KEYCODES数组添加按键码:
static const KeycodeLabelKEYCODES[] = {
...
{ "MY_KEYS" ,250},
最后一定要以NULL结尾,其中的TV_KEYMOUSE_LEFT按键就是瑞星微添加的,再去frameworks/native/include/android/keycode.h文件中添加:enum {
AKEYCODE_UNKNOWN = 0,
....
....
添加
AKEYCODE_MY_KEYS =250,
public staticfinal int KEYCODE_TV_MEDIA_PAUSE = 249;
frameworks/base/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
Android4.4.2系统添加自定义按键【转】的更多相关文章
- 在ubuntu14.04上编译android4.2.2系统
原创作品,转载请注明出处,严禁非法转载 copyright:weishusheng 2015.8.1 时下android系统非常流行,下面就来说一下,下载编译一个andro ...
- 基于CentOS7系统添加自定义脚本服务及参数说明【转】
概述 centos6如果要添加自定义脚本服务只需要把脚本放到/etc/init.d然后授权后用chkconfig添加后就可以管理了,那么centos7又是怎么添加自定义脚本服务呢? CentOS7添加 ...
- android2.3 -添加自定义按键:作唤醒功能 .
最近需要做个唤醒功能,当按键的时候android系统唤醒并点亮屏,在长按键中,系统不能在进入睡眠. 驱动方面: 1:在平台设备文件中添加 一个按键,定义为唤醒源! \arch\arm\mach-s5p ...
- 【转】android4.1.1系统编译全过程
原文网址:http://blog.csdn.net/hudan2714/article/details/7926924 一.编译环境: 首先介绍编译中使用的工具: 虚拟机: vmare 9 下载 ...
- Android4.0-4.4 加入实体按键振动支持的方法(java + smali版本号)
有些手机比方泛泰A820L, 泛泰A890 A900 以及Nubia Z5S 和Z5S mini具有实体按键(这里所说的实体按键是相对于虚拟按键而言, 包括物理按键和触摸屏上多出来的触摸实体按键), ...
- Android系统input按键处理流程(从驱动到framework)【转】
本文转载自:http://blog.csdn.net/jwq2011/article/details/51234811 (暂时列出提纲,后续添加具体内容) 涉及到的几个文件: 1.out/target ...
- 深入浅出-Android系统移植与平台开发(一)- Android4.0系统的下载与编译
作者:唐老师,华清远见嵌入式学院讲师. 一.Android4.0系统的下载与编译 Android系统的下载与编译,Google的官方网站上已经给出了详细的说明,请参照Android的官方网址: htt ...
- Android给自定义按键添加广播和通过广播给当前焦点输入框赋值
一.给自定义按键添加广播 修改PhoneWindowManager.java中的interceptKeyBeforeDispatching方法 /frameworks/base/policy/src/ ...
- C++自定义修饰键,实现如<Capslock+J>等组合键的按键映射
前:所谓修饰键,就是Ctrl,Alt,Shift,Win这些按键. Update: 我使用AHK写了一个功能更丰富的脚本:https://github.com/h46incon/ModifierCus ...
随机推荐
- XTUOJ 15503 - C
15503 - C Accepted: 6 Submissions: 27 Time Limit: 3000 ms Memory Limit: 1048576 KB 在解决了小女孩的 ...
- ssh 监听多个端口
修改sshd的配置文件 默认位置:/etc/ssh/sshd_config 注释掉 Port 这行 然后添加 ListenAddress 行 e.g: ListenAddress 192.168 ...
- UITableView点击背景
系统自定义的点击背景有时间觉得效果不好想换个 - (void)setSelected:(BOOL)selected animated:(BOOL)animated { [super setSelect ...
- Vim enhance part1
NO1 .认识.命令 例 删除man.config中第1到30行的注释 1.光标移到#上,按下x删除 2.按下j将光标移到第二行#上,之后按下. 3.可以看到第2行的#也被删除了因为.就是重复上次命令 ...
- IPython的常见用法
IPython :交互式的Python命令行 安装: pip install ipython 使用(命令行中启动): ipython # 与Python解释器的使用方法一致 IPython高级功能: ...
- Java图片缩略图裁剪水印缩放旋转压缩转格式-Thumbnailator图像处理
前言 java开发中经常遇到对图片的处理,JDK中也提供了对应的工具类,不过处理起来很麻烦,Thumbnailator是一个优秀的图片处理的开源Java类库,处理效果远比Java API的好,从API ...
- POJ3177,/3352.求最少添加多少边使无向图边双连通
俩个题一样.tarjan算法应用,开始求桥,WA,同一个边双连通分量中low值未必都相同,不能用此来缩点.后来用并查集来判断,若不是桥,则在一个双连通分量中,并之,后边再查,将同一个双连通分量中的点通 ...
- iOS 用cornerstone 创建分支
第一步:在cornerstone中添加服务器上的代码路径,如下: 第二步:选中服务器路径下的代码,选择“分支”按钮 第三步:开始创建分支 第四步:效果图如下 第五步:选择分支下的路径下载代码并进行修改 ...
- union关键字和字节大小端序的确定
union 关键字的用法与struct 的用法非常类似. union 维护足够的空间来置放多个数据成员中的“一种”,而不是为每一个数据成员配置空间,在union 中所有的数据成员共用一个空间,同一时间 ...
- 109.Convert sorted list to BST
/* * 109.Convert sorted list to BST * 2016.12.24 by Mingyang * 这里的问题是对于一个链表我们是不能常量时间访问它的中间元素的. * 这时候 ...