博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android input event analyse
阅读量:4229 次
发布时间:2019-05-26

本文共 1097 字,大约阅读时间需要 3 分钟。

InputManager.cpp
initialize()-->
    InputReader.cpp
    启动线程一直循环
    threadLoop-->loopOnce
                 EventHub.cpp
                 -->mEventHub->getEvents()-->getEvents()-->scanDevicesLocked()
                                                 //打开设备节点与load touch/key等参数
                                                    -->scanDirLocked-->openDeviceLocked-->open() 调用驱动中的open打开设备
                                                       -->loadConfigurationLocked() //Load the configuration file for the device
                                                          -->PropertyMap::load() --> PropertyMap.cpp/load() //load *.idc文件
                                                       -->loadVirtualKeyMapLocked() //Configure virtual keys
                                                       -->loadKeyMapLocked() //Load the keymap for the device
                                                          -->Keyboard.cpp/load()-->probeKeyMap()-->loadKeyLayout()-->KeyLayoutMap.cpp/load()
                                                //read event input
                                                -->read()
                如果getEvents()返回的值大于0则配置输入设备
                processEventsLocked()-->addDeviceLocked()-->device->configure()-->TouchInputMapper::configure()
                                                        -->configureParameters() //Configure basic parameters
                                                        -->configureRawPointerAxes()//Configure absolute axis information
                                                        -->parseCalibration()//Prepare input device calibration
                                                        -->resolveCalibration()
                                                        -->configureSurface()
                                    对输入设备进行校准
                                    -->processEventsForDeviceLocked()
                                                        -->InputDevice::process()
                                                        -->TouchInputMapper::process()
                                                        -->TouchInputMapper::sync()
                                                        -->cookPointerData()

转载地址:http://fbjqi.baihongyu.com/

你可能感兴趣的文章
Successful Software Development (2nd Edition)
查看>>
How to Design Programs: An Introduction to Programming and Computing
查看>>
Beginning Relational Data Modeling, Second Edition
查看>>
Winternals Defragmentation, Recovery, and Administration Field Guide
查看>>
Video Conferencing over IP : Configure, Secure, and Troubleshoot
查看>>
Pro ASP.NET 2.0 Website Programming
查看>>
Disassembling Code : IDA Pro and SoftICE
查看>>
Building Online Communities With Drupal, phpBB, and WordPress
查看>>
C# 2.0 : The Complete Reference
查看>>
Digital Character Animation 3
查看>>
Flash 8 Cookbook
查看>>
Mastering Mambo: E-Commerce, Templates, Module Development, SEO, Security, and Performance
查看>>
Web Design For Dummies (For Dummies
查看>>
Flash 8: Projects for Learning Animation and Interactivity
查看>>
Web Portals: : The New Gateways to Internet Information and Services
查看>>
Web Content Caching and Distribution
查看>>
Use Cases Patterns and Blueprints
查看>>
Understanding SOA with Web Services
查看>>
Unit Testing in Java: How Tests Drive the Code
查看>>
The J2EE Architect's Handbook: How to be a Successful Technical Architect for J2EE Applications
查看>>