将自定义输入法设置为系统默认输入法

原创 2015年11月18日 13:10:51


最近研究了一个新技术,就是将自定义的输入法设置为系统默认的输入法,需要修改安卓源码

下面是详细步骤

首先将自定义输入法的包放到  vonder/xxx/apps/自定义输入法(package),添加Android.mk文件


LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)


LOCAL_PACKAGE_NAME := helloIme


LOCAL_MODULE_TAGS := optional


LOCAL_SRC_FILES := $(call all-java-files-under, src)


LOCAL_STATIC_JAVA_LIBRARIES := layoutlib


LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res




LOCAL_CERTIFICATE := platform


LOCAL_PROGUARD_FLAG_FILES := proguard.flags


include $(BUILD_PACKAGE)


然后先编译一下自定义输入法 mmm vendor/xxx/apps/自定义输入法

编译完成之后

将这个包加到 device/ti/blaze_tablet/device.mk 文件中

PRODUCT_PACKAGES += \
        helloIme


修改framework代码


1.  frameworks\base\packages\SettingsProvider\res\values\defaults.xml 文件中修改默认输入法为搜狗输入法

        <string name="config_default_input_method" translatable="false">com.sohu.inputmethod.sogou/.SogouIME

        </string>

        <string name="def_enabled_input_methods" translatable="false">com.sohu.inputmethod.sogou/.SogouIME

        </string>


//com.sohu.inputmethod.sogou/.SogouIME此为搜狗输入法的ID,若要自定义输入法,修改ID即可

 

2.  frameworks\base\packages\SettingsProvider\src\com\android\providers\settings\DatabaseHelper.java  

        在loadSecureSettings()中增加一条语句,制定默认使能的输入法

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

        loadStringSetting(stmt, Settings.Secure.DEFAULT_INPUT_METHOD,R.string.def_enabled_input_methods);





最后make一下,重新生成system.img




Framework 修改默认输入法

安卓定制机器客户需要默认一个输入法。比如 讯飞输入法,谷歌注音输入法等。 第一步:需要获取输入法的ID 就是继承了InputMethodService的类,如何获取呢?首先把这个apk安装,然后去设置...

Android替换/修改系统默认输入法

各大输入法的服务 ro.mtk_default_ime=com.tencent.qqpinyin.QQPYInputMethodService//默认qq输入法 ro.mtk_default_im...

android如何调用显示和隐藏系统默认的输入法

android如何调用显示和隐藏系统默认的输入法 1.调用显示系统默认的输入法 方法一、 InputMethodManager imm = (InputMethodManager) getSystem...

Android替换系统默认输入法

由于产品需求,需将Android原生输入法先后替换成搜狗输入法、百度输入法、谷歌拼音输入法,本文以替换为谷歌输入法为例。  packages/apps下新建文件夹,将需替换的第三方输入法apk放入该...

输入法恢复系统默认,免费

  • 2009年08月10日 17:13
  • 18KB
  • 下载

两种自定义安全键盘&屏蔽系统输入法

本文主要讲两种自定义安全的键盘的实现,还有屏蔽系统输入法!(尤其是如果设备上装有谷歌中文输入法,屏蔽谷歌输入法【4.0版本以上】失效的情况)目录目录 第一种自定义键盘实现 第二种自定义键盘实现 屏蔽系...

WPF自定义Popup窗口随动非顶层不屏蔽输入法

做小项目的时候用到了Popup,但是原生的Popup为最顶层页面,屏蔽输入法不说,还不会自动随窗口移动更新位置。网上方案有很多,这里整理下方便各位码农们使用,废话不多说,直接上干货! class Po...

Android 自定义全局标题栏 解决输入法遮住屏幕问题

自定义标题栏有两个方式 1.把系统标题栏隐藏 显示自己做的xml 这种方法有个bug是在输入法弹出的时候会覆盖应用的界面 不是我们要的效果 2.自定义系统的标题栏 这种应用如果需要输入法输入法弹出...
  • sfshine
  • sfshine
  • 2012年11月21日 19:14
  • 1025

【Android游戏开发十七】让玩家自定义手势玩转Android游戏!—Android Gesture之【输入法手势技术】

李华明Himi 原创,转载务必在明显处注明:转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/android-game/340.html 很多童鞋说我的代码...

Android输入法与自定义软键盘初探

电视机顶盒项目需要用到键盘输入,众所周知,电视的遥控按键较少,无法满足输入的需求,如要输入英文、数字、符合组合的字母时。遥控器的按键就无法满足。基于以上需求,在网上查找了许多资料,和Google ap...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:将自定义输入法设置为系统默认输入法
举报原因:
原因补充:

(最多只允许输入30个字)