The Device Settings command in the Radix Device Management Platform includes a wide array of options to adjust settings on remote devices. You can control the remote user’s ability to install apps and add users, select optimal connectivity for their devices, and adjust the device’s display. The Virtual Keyboard setting allows you to select from among the keyboard options already installed on a remote device. We will see how the Radix MDM can help you select a virtual keyboard layout using the Virtual Keyboard setting command.
Step 1: Identify the current active keyboard layout on your Remote Device
You can identify the current active keyboard on a device using either Android Debug Bridge (ADB) commands or a Remote Execute command.
Method One: By using the ADB commands
1. Open a command line interface on your computer (for example, on a Windows computer, click on the Start menu, type “cmd”, and press Enter).

The command line interface opens.

2. Connect a remote device to your computer using a USB cable.
3. Type “adb devices” to check that your remote device is indeed connected and can receive adb commands.

4. To identify the current value of the keyboard ( = the Virtual Keyboard field), run the command:
adb shell settings get secure default_input_method
The response will be the current keyboard being used by your remote Android device:

We see that the current keyboard is the Fleksy keyboard.
Method Two: By using a Remote Exec command
You can also employ a Remote Execute command from the Radix Device Management platform, using the following parameters:

Command: settings
Arguments: get secure default_input_method
The Remote Execute command appears as follows:

1. Run this Remote Execute command on your device. You will get a notification in the lower left corner whether the command ran successfully:

2. By clicking on the notification, you will get a pop-up that displays the response:

We again see that the Fleksy keyboard is the current keyboard layout.
Step 2: Get a list of all keyboard layouts installed on the remote device
We can also use these two methods to receive a list of all the keyboard options presently installed on a remote device. This will also give us the parameters of the keyboard layout that we want to replace the Fleksy layout.
Method One: By using ADB commands
To get a list of all the keyboard layouts presently on a remote device, use the IME command:
adb shell ime list -s
The response will be as follows:

We see that there are four keyboards presently installed:
- - Google Voice Typing keyboard
- - SwiftKey
- - Fleksy
- - GBoard
Method Two: With the Remote Execute command
Create a Remote Execute command and run it on the remote device.
Command: ime
Arguments: list -s

Alternate Method: Using the Settings command
You can also use the “settings” command to see the keyboard layouts installed on a remote device. The syntax is as follows:
adb shell settings get secure enabled_input_methods | tr ':' '\n'

Alternatively, you can use a Remote Execute command:
Command: settings
Arguments: get secure enabled_input_methods | tr ':' '\n'

The output is as follows, showing the keyboard layouts currently on the remote device:

Step 3: Changing the Keyboard Layout with a Device Settings command
We can now change the keyboard layout by using a Device Settings command.
From Step 1, we know that our current keyboard layout is the Fleksy keyboard. We will switch our layout to the SwiftKey layout.
1. Find the specific device in the Devices Table. Use the Search bar at the top to narrow down the options:

2. Click on the three-dot menu on the far right side and select Device Settings.

3. Click on Add new in the lower left corner to create a new Device Setting.

4. Assign a name to our new Virtual Keyboard command.

5. Click on the General Settings tab and scroll down to the Keyboard and Language>Virtual Keyboard.

6. Click on the Virtual Keyboard button, copy the text of the SwiftKey keyboard layout setting from the result of Step 2, and paste it into the Virtual Keyboard textbox.

7. Click Confirm in the lower right corner to save the setting. The Change to SwiftKey keyboard command will appear in the Device Settings repository of options.

8. Click on the Change to SwiftKey keyboard to select it and click Apply.

9. If we run the command to find the current active keyboard on our device (“get secure default_input_method”), we will see that the layout has been changed to SwiftKey.
