android默認將新安裝的輸入法設爲可用

需求:

將新安裝的輸入法設爲可用,不用進設置中添加

解決過程:

1. 輸入法相關,肯定要找輸入法服務,於是找到\frameworks\base\services\java\com\android\server\InputMethodManagerService.java

2.閱讀代碼,在代碼中發現,有輸入法安裝卸載監聽類PackageMonitor,但是隻實現了部分方法,onSomePackagesChanged,onHandleForceStop,

因此想到,可以增加輸入法安裝監聽。

3.重寫frameworks\base\core\java\com\android\internal\content\PackageMonitor.java中的方法

    public void onPackageAdded(String packageName, int uid) {
    }
    
    public void onPackageRemoved(String packageName, int uid) {
    }

若安裝新的輸入法,可以再onPackageAdded方法中監聽到,在這裏邊加上讓輸入法可用的邏輯,就可以了。

做這個好久了,只寫了一下思路,要是有不對的地方,歡迎糾正。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章