ADB命令后台修改系统默认输入法

今天要研究uiautomator如何输入中文,看网上有一种常用的解决办法:http://www.cnblogs.com/yajing-zh/p/5125387.html在这篇博客最后提出来的问题,也是本篇博客的由来。

涉及到输入法的相关问题,所以想着是否可以在后台修改输入法。

想修改默认输入法,必须知道手机支持哪几种输入法才可以,在此致辞,假如你想修改成哪种输入法,就必须先安装其相应的apk。

关于手机支持的输入法信息,存在于Android手机的/data/data/com.android.providers.settings/databases/settings.db文件中。所以需要执行

“adb pull /data/data/com.android.providers.settings/databases/settings.db” 命令,pull出来,之后用db文件查看器SQLiteSpy(http://www.liangchan.net/liangchan/4599.html)打开settings.db文件

其中的enabled_input_methods的值是

_idnamevalue
63 enabled_input_methods com.android.inputmethod.latin/.LatinIME:com.sohu.inputmethod.sogou/.SogouIME:jp.jun_nama.test.utf7ime/.Utf7ImeService

证明有三种可用的输入法:

  com.android.inputmethod.latin/.LatinIME

  com.sohu.inputmethod.sogou/.SogouIME

  jp.jun_nama.test.utf7ime/.Utf7ImeService

假如想设置sougou为默认输入法,则执行:

adb shell settings put secure default_input_method com.sohu.inputmethod.sogou/.SogouIME

执行完毕,Android手机设置里的当前输入法立马变成搜狗!已经亲自试过,很有效!

获取手机的默认输入法是:adb shell settings get secure default_input_method

根据这个思路,应该可以直接修改设置里的所有菜单,但具体实施起来到底可行否,还需探究。

原文地址:https://www.cnblogs.com/yajing-zh/p/5125317.html