[RK3288][Android6.0] 输入法框架开机初始化部分小结

本文主要介绍了RK3288设备在Android 6.0系统下输入法框架的开机初始化过程。SettingsProvider会读取并更新配置到数据库,InputMethodService则负责读取这些配置。当系统无法找到默认输入法时,会依据特定规则从已安装的输入法中选取最合适的作为默认选项。
摘要由CSDN通过智能技术生成
Platform: ROCKCHIP
OS: Android 6.0
Kernel: 3.10.92

之前遇到默认输入法修改有问题,这里对输入法服务开机初始化部分做个小结.

startOtherServices ->    SystemServer.java
    new InputMethodManagerService ->
        IWindowManager.Stub.asInterface(ServiceManager.getService(Context.WINDOW_SERVICE));    //和windowsmanagerservice建立关系.
        new InputMethodSettings InputMethodUtils.java
        mSettings.getSelectedInputMethod ->    //获取系统默认输入法, SettingsProvider会提前解析默认配置,然后写入数据库,如果没有设置,那么就会返回空.
            getSelectedInputMethod ->    InputMethodUtils.java
                Settings.Secure.getStringForUser(...,Settings.Secure.DEFAULT_INPUT_METHOD, ...);
        buildInputMethodListLocked ->
            new ComponentName    //循环读取系统中所有可用的输入法
            new InputMethodInfo //输入法各自用此结构保存信息.
            InputMethodUtils.getDefaultEnabledImes ->     InputMethodUtils.java //当没有设置输入法时候会自动选择一个,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值