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

编程入门 行业动态 更新时间:2024-10-22 12:24:28

Android<a href=https://www.elefans.com/category/jswz/34/1771452.html style=应用程序键盘(Keyboard)消息处理机制"/>

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

大体流程

  • SystemServer 启动WMS
  • WMS 启动InputManager
  • 启动新的Activity时回到WMS中注册键盘监听器,当InputManager收到消息时就会交给WMS并交给相应的Activity 进行处理
  • 当Activity 失去焦点时就会被反注册被取消键盘监听

InputManager新建的过程

ZygointInit启动SystemServer–>SysmtemServer 启动WMS -->WMS启动InputManager

InputManager 应用程序注册键盘消息接收通道的过程分析

Acitivty 通过requestLayout 来通知InputManager 当前Activity 被激活,然后调用native最后设置InputDispatcher的激活窗口
调用sWindowSession.add 将InputManager 注册
调用InputQueue的registerInputChannel() 注册到当前线程的Looper中
当有消息时就首先查找激活窗口,然后将键盘输入打InputChanel然后发送到Looper的消息队列

InputManager分发键盘消息给应用程序的过程分析

更多推荐

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

本文发布于:2024-02-06 22:45:10,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1751518.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:应用程序   键盘   机制   消息   Android

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!