Android键盘系统浅析(上)
通过往着几个文件中插桩,从模拟器的启动日志,我们可以更直观的开到整个Android键盘系统的建立:
…………………..
I/SystemServer( 57): Window Manager
I/WindowManager( 57): New the thread : mQueue = new Key
I/KeyInputQueue( 57): Enter into the constraction of the Base Class KeyInputQueue
I/KeyInputQueue( 57): Start the mThread???????????????????
I/WindowManager( 57): After mQueue = new Key
I/WindowManager( 57): New the thread of mInputThread
I/WindowManager( 57): After mInputThread
I/WindowManager( 57): New the thread of mInputThread
I/WindowManager( 57): Begin the thread of PolicyThread thr
I/KeyInputQueue( 57): Start the methods run of the mThread
I/KeyInputQueue( 57): Before the readEvent(ev),this is a native method
I/Input ( 57): C::::::::::::4::::::::::::::Entering into the JNI method-readEvent
I/EventHub( 57): C::::::::EventHub.cpp::::::::::Entering into the EventHub::getEvent
I/EventHub( 57): C::::::::EventHub.cpp::::::::::Entering into the EventHub:
penPlatformInput
I/EventHub( 57): C::::::::EventHub.cpp::::::::::Before scan_dir(device_path)
I/EventHub( 57): C::::::::EventHub.cpp::::::::::Entering into the scan_dir(device_path)
I/EventHub( 57): C::::::::EventHub.cpp::::::::::Entering into the open_device(device_path)
I/EventHub( 57): Opening device: /dev/input/event0
I/EventHub( 57): Opened device: /dev/input/event0 (0 failures)
I/EventHub( 57): add device 1: /dev/input/event0
I/EventHub( 57): bus: 0000
I/EventHub( 57): vendor 0000
I/EventHub( 57): product 0000
I/EventHub( 57): version 0000
I/EventHub( 57): name: "qwerty2"
I/EventHub( 57): location: ""
I/EventHub( 57): id: ""
I/EventHub( 57): version: 1.0.0
I/EventHub( 57): New keyboard: publicID=65536 device->id=0x10000
devname='qwerty2' propName='hw.keyboards.65536.devname'
keylayout='/system/usr/keylayout/qwerty.kl'
I/EventHub( 57): New device: path=/dev/input/event0 name=qwerty2 id=0x10000 (of 0x1) index=1 fd=49 classes=0x2f
I/EventHub( 57): C::::::::EventHub.cpp::::::::::Entering into the open_device(device_path)
I/EventHub( 57): Opening device: /dev/input/mouse0
I/EventHub( 57): Opened device: /dev/input/mouse0 (0 failures)
E/EventHub( 57): could not get driver version for /dev/input/mouse0, Not a typewriter
I/EventHub( 57): C::::::::EventHub.cpp::::::::::Entering into the open_device(device_path)
I/EventHub( 57): Opening device: /dev/input/mice
I/EventHub( 57): Opened device: /dev/input/mice (0 failures)
E/EventHub( 57): could not get driver version for /dev/input/mice, Not a typewriter
I/EventHub( 57): C::::::::EventHub.cpp:::::::::Enter into the while(1) ot the EventHub::getEvent
I/KeyInputQueue( 57): After the readEvent(ev)
I/KeyInputQueue( 57): Input event: dev=0x0 type=0x10000000 scancode=0 keycode=0 value=0
I/KeyInputQueue( 57): Device added: id=0x0, name=qwerty2, classes=2f
I/KeyInputQueue( 57): X: unknown values
I/KeyInputQueue( 57): Y: unknown values
I/KeyInputQueue( 57): Pressure: unknown values
I/KeyInputQueue( 57): Size: unknown values
I/KeyInputQueue( 57): No virtual keys found
I/KeyInputQueue( 57): Before the readEvent(ev),this is a native method
I/Input ( 57): C::::::::::::4::::::::::::::Entering into the JNI method-readEvent
I/EventHub( 57): C::::::::EventHub.cpp::::::::::Enter into the EventHub::getEvent
I/EventHub( 57): C::::::::EventHub.cpp:::::::::Enter into the while(1) of the EventHub::getEvent