按键从Linux到Android - Android-Linux

按键从Linux到Android - Android-Linux

ID:37835816

大小:607.89 KB

页数:11页

时间:2019-06-01

按键从Linux到Android - Android-Linux_第1页
按键从Linux到Android - Android-Linux_第2页
按键从Linux到Android - Android-Linux_第3页
按键从Linux到Android - Android-Linux_第4页
按键从Linux到Android - Android-Linux_第5页
资源描述:

《按键从Linux到Android - Android-Linux》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Android/Linux的专栏Email:kangear#163.com目录视图摘要视图订阅【博乐】把C币,装进你的口袋专家亲授Hadoop技术,你报名了吗?软考套餐限时7折优惠CSDN移动客户端,下载送50C币按键从Linux到Android分类:Android2013-09-2721:095090人阅读评论(0)收藏举报按键从Linux到Android现在的普通按键也集成到LinuxInput子系统中了,只需要把按键对应的IO端口配置好,按键就可以工作了。所以一般提供的BSP(或者叫作解决方案)中,已经完善了按键驱

2、动。关键是快速的了解按键的映射。所以这里不作源码级分析。源码分析可以参考这里:《基于S3C2440的Linux-3.6.6移植——按键驱动》Linux按键的扫描码扫描码是LinuxInput系统中规定的码值,好比PC键盘上每个键的键值。都是数字。在设备上输入一下命令后,按键可以探测到得到每个按键的扫描码Code.root@android:/#busyboxhexdump/dev/input/event0(20141009更:同样可以使用Android中专用的getevent命令)Android与Linux分隔线Android也

3、定义了一套码,叫作键盘码,通过一个/system/usr/keylayout/来将两套码对应起来。目前调试的是全志的A10的BSP包。这里用的是sun4i-keyboard.kl。(如果没有其它*.kl,则是默认的qwerty.kl)Linux上传的Code是0x00d9对应10进制217,打开sun4i-keyboard.kl后可以看到映射关系:可以看出对应的是BRIGHTNESS_DOWN,Android中只认BRIGHTNESS_DOWN(这里成为字串),Linux中的Code至此为止。(在Android源码中也能找到这

4、个映射文件可以依名字搜索找到其位置)Android源码中添加该按键如果Android中frameworks/base/core/java/android/view/KeyEvent.java有要添加的功能,比如HOME,则只修改*.kl映射按键即可修改或者添加映射。如果KeyEvent.java中本没有要添加按键的功能,就可以在KeyEvent.java的KeyEvent类最后依葫芦画瓢添加:如不知道功能的键盘码是多少可以到这里找到。然后根据KeyEvent类最后的添加键提示,每个文件都添加上://NOTE:Ifyouadda

5、newkeycodehereyoumustalsoadditto://isSystem()//frameworks/base/native/include/android/keycodes.h//frameworks/base/include/ui/KeycodeLabels.h//external/webkit/Source/WebKit/android/plugins/ANPKeyCodes.h//frameworks/base/core/res/res/values/attrs.xml//emulator?//LAST_

6、KEYCODE//KEYCODE_SYMBOLIC_NAMES////AlsoAndroidcurrentlydoesnotreservecoderangesforvendor-//specifickeycodes.Ifyouhavenewkeycodestohave,you//MUSTcontributeapatchtotheopensourceprojecttodefine//thosenewcodes.Thisisintendedtomaintainaconsistent//setofkeycodedefinitions

7、acrossallAndroiddevices.添加后,Android应用程序就可以通过onKeyDown检测到了检测到这个按键了。至于这个按键具体功能的实现比如这里的BRIGHTNESS_DOWN(亮度减)功能,要修改frameworks/base/policies/base/phone/com/android/internal/policy/impl/PhoneWindowManager.java。根据具体需求实现。关于重启(Reset)键这个“按键”一般是通过直接连接CPU芯片上的复位实现重启功能的。这个直接操作的是CP

8、U,Android(或者Linux)是无法去检测和控制这个“按键”的。20140306更新:今天再次遇到同样的问题,为Android添加按键。平台是rk30,Android版本是4.2.2。遇到了一些新问题和新的挑战,花费一天时间添加完毕。且做了完整的规划。以CAMERA和O

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。