首页 > 关于Android输入法切换的问题

关于Android输入法切换的问题

需要在代码中能够切换到第三方输入法 InputMethodService.switchInputMethod(String id)这个方法在继承InputMethodService的类中调用的话报错说需要一个权限 但是那个权限是系统app才能使用的 在Activity中调用上面的那个方法报错空指针异常 应该是SetInputMethod中的那个token为空 还有什么方法能够切换输入法的啊 有没有做过类似功能的大神啊 困扰好久了

报错信息java.lang.RuntimeException: Unable to create service com.example.android.softkeyboard.SoftKeyboard: java.lang.SecurityException: Using null token requires permission android.permission.WRITE_SECURE_SETTINGS

@Override
 public void onCreate() {
        super.onCreate();
        mWordSeparators = getResources().getString(R.string.word_separators);
        Log.i("TEST", "TEST");
        this.switchInputMethod("com.example.android.softkeyboard/.SoftKeyboard");
        Log.i("TEST", "after TEST");
       
    }

在继承InputMethodService的累的oncreat中调用switchInputMethod方法 结果报错以上信息


需要在代码中能够切换到第三方输入法,这个功能应该在普通app里面实现不了,只有系统app才可以实现。
你想想看,如果你随便写一个app就可以改变系统的输入法,那么流氓软件将何其多。


用这个 InputMethodService.switchInputMethod(String id) 不需要什么权限的吧,难道 现在新的SDK变了,

【热门文章】
【热门文章】