About ADB Change Language
Change locale (language) of your device via ADB (on Android OS version 8.0, 7.0, 6.0, 5.0, 4.4, 4.3, 4.2 and older). No need to root your device! With ADB (Android Debug Bridge) on your computer, you can fast switch the device locale to see how your application UI looks on different languages.
Usage:
- install this app
- setup adb connection to your device (http://developer.android.com/tools/help/adb.html)
- Android OS 4.2 onwards (tip: you can copy the command here and paste it to your command console):
adb shell pm grant net.sanapeli.adbchangelanguage android.permission.CHANGE_CONFIGURATION
- Language change example 1, Brazilian Portuguese:
adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language pt-rBR
- Language change example 2, French and English:
adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language fr,en
This tool is especially handy for developers who want to add locale switching to (test) automation. Tool works on all the latest public OS versions, verified on Android OS 8.0 (Oreo, Google Pixel XL) 7.0 (Nougat, LG G5), 6.0 (Marshmallow, Nexus 6 and Nexus 9), 5.0 (Lollipop, Nexus 5), 4.4 (Kitkat, Galaxy S5), 4.3, 4.2, 4.1 (Jelly Bean), 4.0 (Ice Cream Sandwich, Asus Transformer tablet).
Some of the common languages for quick reference (copy-paste):
Arabic: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language ar
Chinese (Simplified): adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language zh-rCN
Chinese (Traditional): adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language zh-rTW
Danish: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language da
Dutch: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language du
English: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language en
Finnish: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language fi
French: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language fr
German: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language de
Greek: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language el
Hebrew: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language iw
Italian: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language it
Japanese: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language ja
Korean: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language ko
Norwegian: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language no
Polish: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language po
Portuguese: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language pt
Portuguese (Brazilian): adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language pt-rBR
Russian: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language ru
Spanish: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language es
Swedish: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language se
Thai: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language th
Turkish: adb shell am start -n net.sanapeli.adbchangelanguage/.AdbChangeLanguage -e language tr
For a complete list of language codes, see http://stackoverflow.com/a/30028371/1097104.
by R####:
Works very well, if you don't forget to execute the command to give permission to change the configuration. An option to suppress the TOAST would be very usefull for me.