步骤1.framework层添加前,要确定按键驱动是否调好:
adb shell getevent 后按下按键
/dev/input/event3: 0001 02fe 00000001
/dev/input/event3: 0000 0000 00000000
/dev/input/event3: 0001 02fe 00000000
/dev/input/event3: 0000 0000 00000000
其中02fe就是驱动上报的值,两次的1,0是指按下和弹起的动作。
步骤2 . 确定KL键值映射文件
当得到上图你所需要的key信息后就可以在framework中将要添加的keycode添加进去了。
1./frameworks/base/data/keyboards/Generic.kl
在该文件添加key的value值并且定义key的名称:key 645 XXXXXX 其中645和xxxx为驱动定义的value值,XXXXXX在madev.h中定义的,766在input-event-codes.h中定义的(02fe ==766) 。
将驱动上报的02fe转为十进制的766, 并且定义:
key 766 F14
这样就完成了对物理按键kl文件的映射到“F14”
步骤3.framework native 中定义:
/frameworks/native/include/android/keycodes.h