LouisWang
转载请注明出处:http://blog.csdn.net/louiswangbing/article/details/6834238
要想做好android系统开发和源码定制的工作,用户输入系统是不得不去研究的部分。为什么呢?
1. 了解用户输入系统是android深度定制中定制所有与按键相关的事件响应和广播消息的第一步,真正了解了用户输入系统的整个流程,要改写相关的源码就会得心应手,不需要到处去找源码,到处去发帖子,焦头烂额了。
举个简单的例子,前两天看到有个朋友在论坛上发帖子,想要屏蔽掉android的音量键,不知如何下手。这时候如果你了解android用户输入系统,知道android的音量键定义的按键码是keyevent.keycode_volume_up、keyevent.keycode_volume_up,直接去搜索这两个keycode的响应函数,改之即可!有或者你知道这两个keycode与底层驱动之间的映射文件是qwerty.kl,而这个文件里面定义的这两个keycode的值在驱动文件中对应的是android的音量键,那么你也可以改掉这个映射文件,让其映射到其他的按键上,另音量键失效!又或者。。。。了解了用户输入系统,方案就随你自己选了。。。
2. 了解用户输入系统是android系统开发必不可少的步骤。真正了解了用户输入系统,你想定制android快捷键,在任何地方都能一键进入你的应用程序,或者定义一个功能快捷键?没问题!你想改写原有的快捷键?更加没问题!
举个简单的例子,前两天看到有朋友在论坛上发帖子,想说能在任何地方一键进入自己的应用程序,不知道该怎么办。这时候如果你了解android用户输入系统,知道按键定义从底层到上层的流程,知道android的消息机制Broadcast Receiver,那么,随便在键盘上找一个键,把它加到android输入系统中,然后在适当的地方加个广播发送,在你的APP中加个广播接收,搞定!想要哪个键就哪个键!
行了,废话就这么多吧,下面开始进入正题。android用户输入系统分几篇介绍一下(目前只有第一篇,后面几篇会陆续补出来的):
2. android用户输入系统抽丝剥茧
3. android用户输入系统之intent与BroadcastReiver
4. 为android系统添加全局快捷键