Android增加一个物理按键检测步骤
本文将简要介绍为Android增加一个物理按键的步骤,实现在PhoneWindowManager.java检测到该按键后执行想要的操作,示例中会在检测到预定义按键按下后实现打开照相机应用的功能。
1:背景介绍
自带按键手机一部,MT6589平台,安卓4.2版本,3.4.5 Linux内核。
1:背景介绍
自带按键手机一部,MT6589平台,安卓4.2版本,3.4.5 Linux内核。
2:实现细节
2.1实现kernel层按键事件的上报
首先在KPD_INIT_KEYMAP()中把对应的物理按键定义为KEY_TEST,后面的设置也是根据此表来的。而KEY_TEST在input.h中定义。
文件路径:alps/mediatek/custom/${project}/kernel/dct/dct/cust_kpd.h
/* HW keycode [0 ~ 71] -> Linux keycode*/
#define KPD_INIT_KEYMAP() \
{ \
…
[21] = KEY_TEST, \
…
}
Inpu.h中定义KEY_TEST:
路径:alps/kernel/include/linux/input.h
#define KEY_WIMAX 246
#define KEY_RFKILL 247 /* Key that control