(笔记)内核之输入法框架

IMF的本质
包含了虚拟键盘的系统级窗口,能处理虚拟按键的点击事件,当然也能把字符传递到编辑框中
IMF的核心思想
  • 采用Service运行具体的输入法
  • 在Service中创建窗口,把输入的内容传递到编辑框中
常见的缩写
IMF:输入法框架
IM:输入法
IMS:输入法服务
IMM:输入法管理器
IMMS:输入法管理器服务
IME:具体的输入法,包括IMS和各种Bind
IMF框架的四个Binder
IMM:
    Binder,编辑框对应的Binder,IME通过该Binder将虚拟按键消息传递给编辑框;
    IMM对应的Binder,方便IMMS访问客户进程,IMMS需要将IME的Binder传递给客户进程,此后客户进程可直接访问IME;
IME:
    IMS对应的Binder,IMMS通过它控制输入法的状态;
    专属Binder,客户端调用,将按键消息传递给IME;

按键和触摸消息都要将消息转换为虚拟按键消息–>IMM,编辑框对应的Binder–>编辑框;
不同的是按键消息之间传递到客户端中,然后由客户端先调用IME中的专属Binder,将按键消息装换为虚拟按键消息;触屏消息会直接转换为虚拟按键消息。

Binder对应的实现类
InputConnection,接口,定义了编辑框应该提供的函数接口;
InputMethodClien
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值