配色: 字号:
28_2930Android_input设备分析
2017-05-07 | 阅:  转:  |  分享 
  
AndroidInput分析Androidinput子系统框架图:Androidinput主要模块:访问慕
课大巴获取更多安卓教程:www.mukedaba.com1:WindowManagerService:管理窗口,收集input
事件和分发input事件;2:InputManager:接收和分发输入事件;3:EventHub:打开所有的输入设备,输入事件
映射;4:InputReader:InputReader收集到input事件并进行判断处理;5:InputDispatcher
:事件过滤(home,Volume+/-,Power),将事件发送给上层;6:其他模块例如上层事件分发,输入法等;Andr
oidinputManager对象关系图:AndroidEventHub分析:1:监听/dev/input目录(包括
热插拔设备:蓝牙键鼠等)2:扫描并打开/dev/input下的输入设备3:根据配置文件和键值映射文件对设备进行配置和键值映射
4:将所有设备添加到本地列表中5:捕获输入事件,并根据相应设备类型进行处理AndroidEventHub和InputRe
ader处理不同输入设备:1:得到设备输入类型:按键,手柄,触摸(单点,多点);2:根据设备类型和prop做键值布局(.kl)
和映射(.kcm);3:将设备添加到InputReader对象中;4:根据设备类型添加不同mapper;5:InputRea
der做一次按键收集,EventHub获取一次底层键值,并对键值进行处理;6:将收集到的键值发送给监听对象Android
inputReader对象依赖图:AndroidinputEvent数据流程图:
献花(0)
+1
(本文系大文哥的宝...首藏)