今天要研究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的值是
_id | name | value |
---|---|---|
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
根據這個思路,應該可以直接修改設置里的所有菜單,但具體實施起來到底可行否,還需探究。