[RK3399][Android7.1.1] keylayout键值映射:添加了自定义kl档,但仍调用默认Generic.kl的问题

测试平台

Platform: RK3399
OS: Android 7.1.1(industry-71)

现象

修改红外遥控的自定义键值映射表但始终没有生效,始终使用Generic.kl

分析

  1. 使用命令dumpsys input 查看当前设备对应的 KeyLayoutFile ,发现使用的是Generic.kl
    6: ff420030.pwm
      Classes: 0x00000421
      Path: /dev/input/event2
      Descriptor: 9e0e2e03ace6726d18be76b8ddb815cf002c80fb
      Location: gpio-keys/remotectl
      ControllerNumber: 0
      UniqueId: 
      Identifier: bus=0x0019, vendor=0x0001, product=0x0001, version=0x0100
      KeyLayoutFile: /system/usr/keylayout/Generic.kl
      KeyCharacterMapFile: /system/usr/keychars/Generic.kcm
      ConfigurationFile: 
      HaveKeyboardLayoutOverlay: false
  1. 添加log打印发现如下log,提示TV_MEDIA_MULT_BACKWARD未定义
E/KeyLayoutMap( 1437): /system/usr/keylayout/ff420030_pwm.kl:88:Expected key code label, got 'TV_MEDIA_MULT_BACKWARD'.
  1. 查看了InputEventLabels.h和keycodes.h中都没有定义TV_MEDIA_MULT_BACKWARD这个按键.由于ff420030_pwm.kl是我从tvbox的sdk中拷贝出来的,所以有部分按键在当前sdk没有定义
frameworks/native/include/input/InputEventLabels.h:305:    DEFINE_KEYCODE(TV_KEYMOUSE_MODE_SWITCH),
frameworks/native/include/android/keycodes.h:775:    AKEYCODE_TV_KEYMOUSE_MODE_SWITCH = 288,
  1. 屏蔽无效按键,重启机器
cat system/usr/keylayout/ff420030_pwm.kl
key 28    ENTER
key 116   POWER
key 158   BACK
key 139   MENU
key 217   SEARCH
key 232   DPAD_CENTER
key 108   DPAD_DOWN
key 103   DPAD_UP
key 102   HOME
key 105   DPAD_LEFT
key 106   DPAD_RIGHT
key 115   VOLUME_UP
key 114   VOLUME_DOWN
key 143   NOTIFICATION
key 113   VOLUME_MUTE
key 388   TV_KEYMOUSE_MODE_SWITCH
key 150   EXPLORER
key 400   TV_MEDIA_MULT_BACKWARD
#key 401   TV_MEDIA_MULT_FORWARD
#key 402   TV_MEDIA_PLAY_PAUSE
#key 64    TV_MEDIA_PLAY
#key 65    TV_MEDIA_PAUSE
#key 66    TV_MEDIA_STOP
#key 67    TV_MEDIA_REWIND
#key 68    TV_MEDIA_FAST_FORWARD
#key 87    TV_MEDIA_PREVIOUS
#key 88    TV_MEDIA_NEXT
  1. 再次使用命令dumpsys input 查看当前设备对应的 KeyLayoutFile ,发现已经改为ff420030_pwm.kl
    6: ff420030.pwm
      Classes: 0x00000421
      Path: /dev/input/event2
      Descriptor: 9e0e2e03ace6726d18be76b8ddb815cf002c80fb
      Location: gpio-keys/remotectl
      ControllerNumber: 0
      UniqueId: 
      Identifier: bus=0x0019, vendor=0x0001, product=0x0001, version=0x0100
      KeyLayoutFile: /system/usr/keylayout/ff420030_pwm.kl
      KeyCharacterMapFile: /system/usr/keychars/Generic.kcm
      ConfigurationFile: 
      HaveKeyboardLayoutOverlay: false
  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值