Change Keyboard Input Language Programmatically

You can change keyboard without user notification only and only if your app is running as a System app for security reasons.

You need to give Android permission first in your app’s AndroidManifest.xml


Then you need to determine id of your keyboard.

-> To know id, you need to keep your keyboard default from setting menu manually then put this print somewhere,


Once you print id and you know your keyboard id you can do as per below
( I have changed my default keyboard to Japanese )

InputMethodManager imeManager = (InputMethodManager) getApplicationContext().getSystemService(INPUT_METHOD_SERVICE);

//imeManager.showInputMethodPicker(); //This is to see available keyboards.

Enjoy !!

Leave a Comment