打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Android修改默认的键盘输入法
在Android系统中,默认的是google拼音输入法,因客户需求,需要将默认的拼音输入法修改为Android键盘,具体步骤如下:

方法1:

在com.android.settings.LanguageSettings中的onCreateIMM()方法有如下代码:

    InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);

     mInputMethodProperties = imm.getInputMethodList();

    mLastInputMethodId = Settings.Secure.getString(getContentResolver(), Settings.Secure.DEFAULT_INPUT_METHOD);
    
    Android系统会从默认配置数据库中取出默认的输入法,因此我们只需要在数据库中添加默认的输入法即可:
    
    步骤如下:
    
    1、修改\frameworks\base\packages\SettingsProvider\res\values\defaults.xml文件
      添加<string name="config_default_input_method" translatable="false">com.android.inputmethod.latin/.LatinIME</string>
    
     2、将该默认配置添加至数据库:
    \frameworks\base\packages\SettingsProvider\src\com\android\providers\settings\DatabaseHelper.java

        private void loadSecureSettings(SQLiteDatabase db) {
        
                。。。。
                。。。。
                loadStringSetting( stmt, Settings.Secure.DEFAULT_INPUT_METHOD,R.string.config_default_input_method );
        
        
方法2:

    1、修改frameworks\base\core\res\res\values\config.xml文件
     添加<string name="config_default_input_method" translatable="false">com.android.inputmethod.latin/.LatinIME</string>
    
    2、修改frameworks\base\services\java\com\android\server\InputMethodManagerService.java文件中的buildInputMethodListLocked()方法
    if ( defaultIme == null ) { // 有人反映此处判断 有问题的  小心哟
        String defaultIme = Settings.Secure.getString(mContext.getContentResolver(), Settings.Secure.DEFAULT_INPUT_METHOD);
            final Resources res = mContext.getResources();
             try {
                String myIME = res.getString( com.android.internal.R.string.config_default_input_method );
                 if ( myIME != null && myIME.length() > 0 ) {
                    Settings.Secure.putString( mContext.getContentResolver(), Settings.Secure.DEFAULT_INPUT_METHOD, myIME );
                 }
             } catch ( Exception e ) {

            }
        
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
Android输入法框架中按键消息的处理流程
[转]Android输入法框的梳理
Android 一些简单设置
Fedora 17 安装中文输入法
Android中EditTex焦点设置和弹不弹出输入法的问题
Android窗口管理服务WindowManagerService对输入法窗口(Input Method Window)的管理分析
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服