android kl(key layout)文件是一个映射文件,是标准linux与anroid的键值映射文件,kl文件可以有很多个,但是它有一个使用优先级:

/system/usr/keylayout/Vendor_XXXX_Product_XXXX_Version_XXXX.kl
/system/usr/keylayout/Vendor_XXXX_Product_XXXX.kl
/system/usr/keylayout/DEVICE_NAME.kl
/data/system/devices/keylayout/Vendor_XXXX_Product_XXXX_Version_XXXX.kl
/data/system/devices/keylayout/Vendor_XXXX_Product_XXXX.kl
/data/system/devices/keylayout/DEVICE_NAME.kl
/system/usr/keylayout/Generic.kl
/data/system/devices/keylayout/Generic.kl  

如果你没有为设备单独定义kl文件,那么就会使用默认的那个Generic.kl文件。
例如:

# This is an example of a key layout file for basic system controls, such as
# volume and power keys which are typically implemented as GPIO pins that
# the device decodes into key presses.key 114   VOLUME_DOWN       WAKE
key 115   VOLUME_UP         WAKE
key 116   POWER             WAKE

还有一点需要注意,我们怎么知道这个vendor号和input name呢,可以通过cat /proc/bus/input/devices命令查看,当然getevent -p也可以查看input name。而android这边的keycode定义在frameworks/native/include/input/InputEventLabels.h文件中,定义在KEYCODES这个数组中的,是通过宏DEFINE_KEYCODE定义的,例如:

DEFINE_KEYCODE(VOLUME_DOWN),  

而真正的键值是定义在frameworks/native/include/android/keycodes.h中的。
完。

转载于:https://www.cnblogs.com/linhaostudy/p/8857636.html

android kl文件相关推荐

  1. android kl文件编辑,Android手机固件的简单修改教程

    经常玩安卓的机友肯定都很享受刷机的乐趣,并且一个机器固件的丰富与否有时候甚至会成为我们选择机器的考虑点.但固件总是有限的,虽然各路大神已经辛辛苦苦做了刷机包,但刷完之后总有些不满意的地方,虽然作为一个 ...

  2. android 按键kl文件,Android添加新按键

    1.前言 在Android开发中可能会遇到添加新的按键的需求,本文将简单介绍如何在Android系统中完成一个新的按键的添加. 当系统有新的按键需要添加时,Linux内核下的键码到Android系统中 ...

  3. Android.mk文件语法规范

    序言: ------------- 此文档旨在描述Android.mk文件的语法,Android.mk文件为Android NDK(原生开发)描述了你C/C++源文件. 为了明白下面的内容,你必须已经 ...

  4. Android.mk文件语法规范及使用模板 (转载)

    2019独角兽企业重金招聘Python工程师标准>>> http://blogold.chinaunix.net/u3/99423/showart_2206760.html Andr ...

  5. Android下载文件(一)下载进度断点续传

    Android下载文件(一)下载进度&断点续传 索引 Android下载文件(一)下载进度&断点续传 Android下载文件(二)单任务多线程并发&断点续传(待续) Andro ...

  6. Android资源文件 - 使用资源存储字符串 颜色 尺寸 整型 布尔值 数组

    一. Android资源文件简介 1. Android应用资源的作用 (1) Android项目中文件分类 在Android工程中, 文件主要分为下面几类 : 界面布局文件, Java src源文件, ...

  7. Android.mk 文件语法详解

    0. Android.mk简介: Android.mk文件用来告知NDK Build 系统关于Source的信息. Android.mk将是GNU Makefile的一部分,且将被Build Syst ...

  8. Xamarin Android布局文件没有智能提示

    Xamarin Android布局文件没有智能提示 在Visual Studio 2015中,Android项目的Main.axml文件没有智能提示,不便于布局文件的编写.解决办法: (1)从Xama ...

  9. 打开别人Xamarin项目找不到android.jar文件

    打开别人Xamarin项目找不到android.jar文件 错误信息:Could not find android.jar for API Level 23. 打开非本机创建的Xamarin项目,编译 ...

  10. Xamarin中打开别人项目找不到android.jar文件

    Xamarin中打开别人项目找不到android.jar文件 错误信息:Could not find android.jar for API Level 23. 打开非本机创建的Xamarin项目,编 ...

最新文章

  1. LeetCode简单题之两个列表的最小索引总和
  2. STM32启动BOOT0 BOOT1设置方法 [
  3. 表单提交对chrome记住密码的影响
  4. 小技巧:浏览器里显示成星号的密码,忘记了该怎么办?
  5. java 无法找到ant_Java-Ant需要tools.jar并且无法找到我
  6. Android四大组件---Activity
  7. 2021高考成绩查询截图,科目四2021模拟考试成绩截图
  8. Spring Ioc Configration - Annotation
  9. mdl文件是c语言,MDL文件扩展名 - 什么是.mdl以及如何打开? - ReviverSoft
  10. GRE蓝宝的核心词汇
  11. 一周学习荟萃(TED,知识,教育,笑话,鸡汤)
  12. 如何以活动价在官网购买百度网盘会员
  13. 联想拯救者y7000p加内存条_内存、硬盘不够用?手把手教你升级联想拯救者 Y7000P...
  14. Socket的用法——普通Socket
  15. python基础之写文件操作
  16. MnTTS: 开源蒙古语语音合成数据集及其基线模型
  17. 51单片机光敏电阻控制led亮
  18. Python爬虫实战--(四)爬取58同城的商品数据
  19. 43種能創造「被動收入」的方法,收藏起來吧!
  20. 不是有效的psd文件怎么修复_毛孔粗大怎么修复最有效

热门文章

  1. 网站banner图片制作(简易版)
  2. 大数据奏鸣曲,听出了什么?
  3. 将原生安卓项目封装为cordova插件实例分析
  4. Centos单网卡多IP的配置
  5. 【转】大厦将倾,互联网将如何变革传统行业(下)
  6. 转:linux下挂载移动硬盘
  7. linux下安装redis-cli
  8. java 算法 数组_常见算法总结 - 数组篇
  9. Redis 6.0 源码阅读笔记(0) -- Redis 哈希表和字典 铺垫
  10. 二叉树 --5.1.3 Binary Tree Zigzag Level Order Traversal --图解