【Android系统源码修改】如何定制出厂默认输入法

方法一:

修改文件如下:
frameworks\base\packages\SettingsProvider\res\values\defaults.xml
frameworks\base\packages\SettingsProvider\src\com\android\providers\settings\DatabaseHelper.java
一些系统定制信息是通过 frameworks/base/package/settingsproviders/res/values/defaults.xml 来预设的,
在系统首次启动时加载此文件,并应用文件中的设置。文件如下:
例子: 设置默认输入法为google拼音
M frameworks\base\packages\SettingsProvider\res\values\defaults.xml

<string name="config_default_input_method" translatable="false">  
com.android.inputmethod.pinyin/.PinyinIME</string> 

frameworks\base\packages\SettingsProvider\src\com\android\providers\settings\DatabaseHelper.java
在loadSecureSettings()中增加一条语句,制定默认使能的输入法

  loadStringSetting(stmt, Settings.Secure.ENABLED_INPUT_METHODS,    R.string.config_default_input_method );   

方法二:

修改文件如下:
frameworks\base\core\res\res\values\config.xml
frameworks\base\services\java\com\android\server \InputMethodManagerService.java
在 frameworks\base\core\res\res\values\config.xml 添加一个属性:

 <string name="config_default_input_method" translatable="false">com.android.inputmethod.pinyin/.PinyinIME</string>  

frameworks\base\services\java\com\android\server\InputMethodManagerService.java 的方法 buildInputMethodListLocked() 里添加:

  String defaultIme = Settings.Secure.getString(mContext   
              .getContentResolver(), Settings.Secure.DEFAULT_INPUT_METHOD);   
   if ( defaultIme == null ) {   
      final Resources res = mContext.getResources();   
      try {   
          //frameworks\base\core\res\res\values\config.xml   
           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 ) {   
       }   
   }   
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值