Android输入法开发
参考资料
1. Android输入法开发
https://www.cnblogs.com/carlo/p/4737523.html
一,讲解了 输入法相关的概念:
IMF:输入法框架 (Input Method Framework)
IM: 输入法 (Input Method)
IMS : 输入法服务 (Input Method Service)
IMMS : 输入法服务管理器 (Input Method Manage Service), system process的一部分,系统中只有一个该服务的实例 《eg : 一次只能打开 Sogou or 百度输入法》
IMM : 输入法管理器 (Input Method Manage), 每个客户端进程包含一个该实例
IME : 泛指一个具体的输入法APK, (Input Method Engine), 包含其内部的IMS和各种Binder
二,核心思想:
以Service方式运行具体的思想·
在Service中创建输入法窗口,并把内容传递到EditText框中
三,IME的两个Binder:
IMS对应的Binder, IMMS通过该Binder去控制输入法,eg: 显示,隐藏等。
专门供客户端调用的Binder, 该对象用于 在输入过程中,客户端 将事件 传给输入法
四,IME几个要素
五,动手写一个IME
https://my.oschina.net/hailongqiu/blog/1535494
https://blog.csdn.net/xutao3716/article/details/49616807
https://blog.csdn.net/vrix/article/details/6683664
https://developer.android.google.cn/guide/topics/text/creating-input-method.html
https://blog.csdn.net/wong_judy/article/details/5888574
https://www.jianshu.com/p/eb4ab57393f3