Is there a way to set the language of the Enterprise Keyboard with Mobicontrol independend of the language of Android itself ?

Is there a way to set the language of the Enterprise Keyboard with Mobicontrol independend of the language of Android itself ?


I have to set with the help of MobiControl to get the same result as doing manually with system->language->virtual keyboard->not use system language->set required language.

Devices are Zebra TC52 with Android 10 and AEDO.

Also in the Zebra Enterprise Keyboard API/MX I didnt find a way to do that beside creating a whole new custom keyboard layout, but for just one setting doing a new layout is hugh effort.


3 Answers

Order By:   Standard | Newest | Votes
Raymond Chan | posted this 29 July 2020

Zebra MX often provides the extra on top of what OEM-independent Android Enterprise API's support.  If you could not find anything in MX, it is unlkely that you can do it via AE API's from Soti or any other EMM solutions.


  • 0
  • 0
DDMOD@SOTI | posted this 30 July 2020

Hi Martin,


Thanks for the interesting post!

As per your post, I performed testing on my local environment. What I basically did is I enrolled a device as Android+ (this supports the command I used) and I sent the following command to the device: watchsettings on
This command logs user actions in the Web Console in the Logs tab on the device. In this case I tried to play around with a German keyboard. This looks something like that:

Custom log (://settings/system SETTING:handwriting_language_list VALUE:en_US;)
Custom log (URI:content://settings/secure SETTING:enabled_input_methods;1701729619;1684340736)

These are the scripts I have sent to the device to try to change these entries to change it to German keyboard:
writesecuresetting -sys handwriting_language_list de_DE
writesecuresetting -sec enabled_input_methods;1701729619

Unfortunately this does not seem to work. I was able to find the specific entries to target the scripts but it didn't work. So the conclusion is that it's not possible as of now. The only other way that could perhaps work is the use of macros. Are all of the devices set the same way? If so, do they have any type of pin, if so - is it the same on all? The macro idea is very dependent on deployment and won't work for any scenario as what it involves is "recording" steps on one device, and then replicating these steps on other devices, but everything must be the same on every device for it to work properly.


Hope this information helps you!



Technical Support | SOTI Inc. |+1-888-494-SOTI (7684) | | |

  • 0
  • 0
Yannick Weijenberg | posted this 16 December 2020

Yes finally found the answer! We have Zebra TC52 devices deployed all over Europe and doing support remotely from 1 country. So for us, it was not an option to change the OS system language to any of the languages of the device's location.

This is what we wanted to accomplish:

All Countries: OS System : English_UK

Netherlands: Layout Enterprise Keyboard: Querty - Dutch
Belgium: Layout Enterprise Keyboard: Azerty - Dutch_Be
Germany: Layout Enterprise Keyboard: Qwertz - German

Etc. You understand what we want to do right?


So in Zebra's MX 10.1+, this is finally doable!

Choose Xpert and select Enterprise Keyboard Settings TWICE!! (You must do this twice, for example, if you send new configuration it will only ADD the new layout and not REPLACE the new layout setting!)


In the first EnterpriseKeyboard settings, the only thing you set is this:
Language to Use: Android System. This way you sort of 'reset'  your current settings for the Keyboard Languages.
(for example, we want devices to change keyboard languages when shipped to different countries)



In the 2nd EnterpriseKeyboard setting, you can change all the settings to what every layout you prefer, let's say, you want auto-correct on or off, you can choose whatever you want.


At Language to Use, you select: 'Enterprise Keyboard'
At Language Action: you select 'Enable'
Language(s): you select: 'Custom Language'


Then when you continue, review the settings and select 'export for MDM'



You'll now have a XML. We are going to alter this XML to requested language:



For example:
Dutch = 'Dutch'
Russian = 'Russian'
German = 'German'

You can find your language here:


Then create a package and create a post install script:

mxconfig 'path to xml file'
reset /s


Not sure if the reboot is necessary but that's what I am doing at least...


Good luck! =D



  • 2
  • 0

Give us your feedback
Give us your feedback