Reference: http://www.aichengxu.com/java/42480.htm
t_context = SetIndex.this; // turn_to_system_set_page = (Button)findViewById(R.id.turn_to_system_set_page); turn_to_system_set_page.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //Jump to the input method check setting page Intent intent = new Intent(Settings.ACTION_INPUT_METHOD_SETTINGS); t_context.startActivity(intent); } }); // show_more_ime_list = (Button)findViewById(R.id.show_more_ime_list); show_more_ime_list.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //Pop up the checked input method and set the default ((InputMethodManager) t_context.getSystemService(t_context.INPUT_METHOD_SERVICE)).showInputMethodPicker(); } }); //\\ Log.d("mft","The currently installed input method has"); InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); List<InputMethodInfo> methodList = imm.getInputMethodList(); for(InputMethodInfo mi:methodList ) { CharSequence name = mi.getPackageName(); Log.d("mft", "PackageName:" + name); } Log.d("mft","The checked input method has"); String enable = Settings.Secure.getString(getContentResolver(), Settings.Secure.ENABLED_INPUT_METHODS); Log.d("mft", enable.replace(":","\n")); Log.d("mft","The current default input method is"); String currentInputmethod = Settings.Secure.getString(getContentResolver(), Settings.Secure.DEFAULT_INPUT_METHOD); Log.d("mft", currentInputmethod);