文章 2017-11-14 来自:开发者社区

Android应用程序键盘(Keyboard)消息处理机制分析(14)

 3. InputManager分发键盘消息给应用程序的过程分析         在分析InputManager分发键盘消息给应用程序的过程之前,我们先假设现在没有键盘事件发生,因此,InputManager中的InputReader正在睡眠等待键盘事件的发生,而InputManager中的InputDispatcher正在等待...

文章 2017-11-14 来自:开发者社区

Android应用程序键盘(Keyboard)消息处理机制分析(15)

     Step 7. KeyboardInputMapper.processKey           这个函数定义在frameworks/base/libs/ui/InputReader.cpp文件中: void KeyboardInputMapper::processKey(nse...

文章 2017-11-09 来自:开发者社区

Android应用程序键盘(Keyboard)消息处理机制分析(27)

  Step 14. NativeInputQueue.unregisterInputChannel         这个函数定义在frameworks/base/core/jni/android_view_InputQueue.cpp文件中: status_t NativeInputQueue::unreg...

文章 2017-11-08 来自:开发者社区

Android应用程序键盘(Keyboard)消息处理机制分析(3)

    Step 15. Looper.pollOnce         这个函数定义在frameworks/base/libs/utils/Looper.cpp文件中,具体可以参考前面Android应用程序消息处理机制(Looper、Handler)分析一文,这里就不再详述了。总的来说,就是在Looper类中,会创建...

文章 2017-11-08 来自:开发者社区

Android应用程序键盘(Keyboard)消息处理机制分析(6)

Step 21. EventHub.openDevice这个函数定义在frameworks/base/libs/ui/EventHub.cpp文件中: int EventHub::openDevice(const char *deviceName) {        int&nb...

文章 2017-11-08 来自:开发者社区

Android应用程序键盘(Keyboard)消息处理机制分析(8)

回到Step 18中,我们继续分析EventHub.getEvent函数的实现。 在中间的for循环里面,首先会检查当前是否有输入设备被关闭,如果有,就返回一个设备移除的事件给调用方: // Report any devices that had last been added/removed.  ...

文章 2017-11-08 来自:开发者社区

Android应用程序键盘(Keyboard)消息处理机制分析(17)

  Step 11. InputDispatcher.dispatchOnceInnerLocked         这个函数定义在frameworks/base/libs/ui/InputDispatcher.cpp文件中: void InputDispatcher::dispatchOnceInnerLo...

文章 2017-11-08 来自:开发者社区

Android应用程序键盘(Keyboard)消息处理机制分析(20)

  Step 24. InputQueue.dispatchKeyEvent           这个函数定义在frameworks/base/core/java/android/view/InputQueue.java文件中: public final class InputQueue&...

文章 2017-11-08 来自:开发者社区

Android应用程序键盘(Keyboard)消息处理机制分析(25)

  Step 2. ActivityStack.activityIdleInternal         这个函数定义在frameworks/base/services/java/com/android/server/am/ActivityStack.java文件中: public class Activit...

文章 2017-11-08 来自:开发者社区

Android应用程序键盘(Keyboard)消息处理机制分析(26)

  Step 7. LocalWindowManager.removeViewImmediate         这个函数定义在frameworks/base/core/java/android/view/Window.java文件中: public abstract class Wind...

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

mPaaS 移动开发平台

mPaaS 源于蚂蚁集团金融科技,为 App 开发、测试、运营及运维提供云到端的一站式解决方案,致力于提供高效、灵活、稳定的移动研发、管理平台。 官网地址:https://www.aliyun.com/product/mobilepaas/mpaas

+关注