Android 使用 validatekeymaps 验证按键映射文件

53 篇文章 2 订阅

参考 验证按键映射工具

使用 validatekeymaps 工具,

可以很方便的验证 Generic.kl 、Vendor_0079_Product_0011.kl 、Generic.kcm 等输入设备配置文件、按键布局文件、按键字符映射文件和虚拟按键定义文件的语法。

在源码下 sourcelunch 后,执行 validatekeymaps 可看到提示,

Keymap Validation Tool

Usage:
 validatekeymaps [-q] [*.kl] [*.kcm] [*.idc] [virtualkeys.*] [...]
   Validates the specified key layouts, key character maps, 
   input device configurations, or virtual key definitions.

   -q Quiet; do not write anything to standard out.

执行 validatekeymaps frameworks/base/data/keyboards/Generic.kl ,提示

Validating file 'frameworks/base/data/keyboards/Generic.kl'...
libvintf W 01-29 01:42:18 1504118 1504118 RuntimeInfo-host.cpp:27] Should not run fetchAllInformation on host.
Success.

修改该文件,

diff --git a/frameworks/base/data/keyboards/Generic.kl b/frameworks/base/data/keyboards/Generic.kl
index c81473ddcf..c2edfe9683 100644
--- a/frameworks/base/data/keyboards/Generic.kl
+++ b/frameworks/base/data/keyboards/Generic.kl
@@ -21,7 +21,7 @@
 #
 
 key 1     ESCAPE
-key 2     1
+key 1     1
 key 3     2
 key 4     3
 key 5     4

特地改成错误的,再执行 validatekeymaps frameworks/base/data/keyboards/Generic.kl 就会提示

KeyLayoutMap E 01-29 01:42:51 1504168 1504168] frameworks/base/data/keyboards/Generic.kl:24: Duplicate entry for key scan code '1'.
Error Load KeyLayoutMap failed -22. parsing key layout file.

Failed!

报错也明显,重复定义了 key 1 。

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值