在Android中修改键盘布局或者按键映射时,除了在inputdevice中修改上报的SCANCODE之外,还需要修改相应的kl文件。
具体原理:
当一个inputdevice的driver将按键的SCANCODE上报给EventHub之后,EventHub还会用SCANCODE去获取具体的Keycode,这一步就是根据相应的inputdevice的kl文件中的配置得到的,所以如果仅仅上报SCANCODE,不修改kl文件,则会导致SCANCODE是正确的,但是找不到相应的mapkey,从而上报的最终keycode是UNKNOWN。