UI Manager

EMDK For Android - 6.6

Overview

The UI Manager (UiMgr) provides control of miscellaneous UI configuration settings, such as those for language and locale, the device notification pull-down, Quick Settings controls, default input device and Clipboard behavior.

Android devices contain a variety of System applications that access UI elements spread throughout the OS. In some cases, one or more of these "standard" UI elements were deemed undesirable by Zebra customers and/or partners for devices deployed in an enterprise. The UiMgr provides control over these UI elements and the option of disabling Android behaviors or features with the potential to hinder the productivity of device users engaged in specific business tasks.

Security Warning: The UiMgr permits the "Network may be monitored..." message to be suppressed. This important safeguard is intended to warn device users of a potential security risk. Administrators should not suppress this message unless CA certificates have been properly vetted before installation on a device, and should ensure that no untrusted certificates can be subsequently installed while the message remains suppressed.

Main Functionality

  • Enable or Disable use of the following:
    • Quick Settings for user access to Wi-Fi, Bluetooth and other settings
    • Clipboard function, which allows a device user to copy and paste information between applications
    • The AutoCorrect function, which stores commonly entered words and allows them to be entered instead of similar words that were mistyped
    • The Home Key function, which exits current application and presents the Home Screen application
    • The Bluetooth Paring pop-up feature, which requests device-user involvement even if an application has supplied all required pairing information
    • "The network may be monitored..." message
  • Configure localization settings to:
    • Set the Current Locale for a desired language and region
    • Set the Default Input Method to enhance entry of localized data
  • Clear the Clipboard, which discards any prior data that might have been copied

Clipboard

Controls whether the Clipboard function can be used, potentially enabling a device user to move data from one app to another.

Parm Name: ClipBoardUsage

Option Name Description Requires
0 Do not change This value (or the absence of this parm from the XML) will cause no changes as to whether the Clipboard function can be used; any previously selected setting will be retained.

OSX: 4.2+

MX: 4.2+

1 Enable Enables the Clipboard function to be used.

OSX: 4.2+

MX: 4.2+

2 Disable Disables use of the Clipboard function. Note- This will prevent the user from using the copy and paste functions for moving data to and from the clipboard. Attempting to use a disabled clipboard will result in an Android Toast message stating that the clipboard is disabled.

OSX: 4.2+

MX: 4.2+

Clear Clipboard

Used to immediately clear the contents of the clipboard, preventing data that was stored there from being pasted at any time thereafter. If use of the Clipboard function is allowed by an application, it might be advisable to use this parm to clear sensitive information from clipboard upon exiting. This would ensure that such information could not later be pasted into another application.

Parm Name: ClipBoardClear

Option Name Description Requires
true true Clears the clipboard, erasing any content that was previously copied and preventing such content from being pasted.

OSX: 4.2+

MX: 4.2+

false false Causes no change to the contents of the clipboard.

OSX: 4.2+

MX: 4.2+

AutoCorrect Usage Enable/Disable

Controls whether AutoCorrect functionality is accessible on the device. AutoCorrect can be used to save commonly entered words or industry-specific words or phrases and offer them as corrections to potentially mistyped words. Such functionality could present a security risk by exposing sensitive information to subsequent device users that are not authorized to view or reuse that information.

Note: This parameter does not turn the AutoCorrect function on or off or configure any of its functions. When AutoCorrect is enabled, an administrator or device user must still use the System Settings panel turn the function on or off and configure its functions. When disabled, AutoCorrect functionality cannot be used on the device.

Parm Name: AutoCorrectUsage

Option Name Description Requires
0 Do not change This value (or the absence of this parm from the XML) will cause no changes to be made as to whether the AutoCorrect function is allowed to be used; any previously selected setting will be retained.

MX: 4.3+

Android API Level: 1+

1 Enable Enables use of the AutoCorrect function, allowing an administrator or device user to the turn the function on and off and configure its settings using the System Settings panel.

MX: 4.3+

Android API Level: 1+

2 Disable Disables use of the AutoCorrect function, preventing an administrator or device user from turning the function on or off and configuring its settings using the System Settings panel.

MX: 4.3+

Android API Level: 1+

Network Monitored Message Enable/Disable

Controls whether the message "Network may be monitored..." will be displayed on the device when the device user connects to certain types of networks. This message is generally associated with networks that implement a public key infrastructure and require a root certificate on the device before a client will be allowed to connect.

Security Warning: The "Network may be monitored..." message is a safeguard intended to warn device users of a potential security risk. Administrators should not suppress this message unless CA certificates have been properly vetted before installation on a device, and should ensure that no untrusted certificates can be subsequently installed while the message remains suppressed.

Parm Name: NetworkMonitorNotification

Option Name Description Requires
0 Do not change This value (or the absence of this parm from the XML) will cause no changes to whether the "Network may be monitored..." message will be displayed; any previously selected setting will be retained.

OSX: 6.0+

MX: 6.1+

1 Turn On Allows "Network may be monitored..." notifications to be displayed.

OSX: 6.0+

MX: 6.1+

2 Turn Off Prevents "Network may be monitored..." notifications from being displayed.

OSX: 6.0+

MX: 6.1+

HOME Key Enable/Disable

Used to prevent use of the HOME key to exit the current app and run the Home Screen app. This might be desirable when the device is devoted to running a single application, such as that of a kiosk. By blocking use of the HOME key, a common method of navigating away from the application (whether intentional or not) can be eliminated.

Note: Enabling this parameter does not affect the "long press" behavior of the HOME key. To completely prevent all HOME key functionality, use the Key Mapping Manager (on supported devices) to disable the HOME key or map it to a desired behavior.

Parm Name: HomeKeyUsage

Option Name Description Requires
0 Do not change This value (or the absence of this parm from the XML) will cause no change to HOME key functionality; any previously selected setting will be retained.

OSX: 1.0+

MX: 4.3+

1 Enable Allows use of the HOME key to exit the current app and launch the Home Screen app.

OSX: 1.0+

MX: 4.3+

2 Disable Prevents use of the HOME key, which would otherwise exit the current app and run the Home Screen app.

OSX: 1.0+

MX: 4.3+

Bluetooth Pairing Popup Enable/Disable

Controls whether to present the Bluetooth Pairing Popup during a pairing operation. The Bluetooth Pairing Popup is of most use when the device user will be left in charge of pairing of Bluetooth peripheral devices with an Android device. If one or more applications are expected to completely control all pairings of Bluetooth peripheral devices, the Bluetooth Pairing Popup may be seen as an unnecessary and confusing intrusion on the device user and/or as introducing the potential for the device user to mistakenly interfere with the pairing process.

Parm Name: BluetoothPairingPopupUsage

Option Name Description Requires
0 Do not change This value (or the absence of this parm from the XML) will cause no changes to be made as to whether the Bluetooth Pairing Popup is will be presented; any previously selected setting will be retained.

OSX: 4.3+

MX: 4.3+

1 Enable Causes the Bluetooth Pairing Popup to be presented whenever a pairing operation is performed.

OSX: 4.3+

MX: 4.3+

2 Disable Causes the Bluetooth Pairing Popup to be suppressed when a pairing operation is performed.

OSX: 4.3+

MX: 4.3+

Set Current Locale

Permits the selection of the device's Locale. A locale is the combination of a language and a region in which that language is spoken. Languages are identified by two lower-case letters; regions are identified by two upper-case letters. The locale joins the two letter-pairs with an underscore ("_") character. For example, "en_US" is the locale specification for "English spoken in the United States," and "fr_CA" is the locale specification for "French spoken in Canada."

When changing the Locale, it also might be desirable to change the Default Input Method to one that is suitable for entry of characters for the language associated with the selected Locale. Setting a particular Input Method as the Default Input Method does not prevent the device user from manually selecting a different Input Method, it merely determines which Input Method will come up automatically each time that parm is invoked.

Parm value input rules:

  • String containing two lower-case letters corresponding to the language
  • Optionally may contain two upper-case letters designating a region code
  • When a region code is used, letter pairs are joined by an underscore ("_") character. For example: en_US
  • The minimum length is 2 characters; the maximum length is 5 characters

Parm Name: CurrentLocale

Option Name Description Requires
0 Do not change This value (or the absence of this parm from the XML) will cause no changes to be made to the Locale; any previously selected setting will be retained.

OSX: 1.3+

MX: 4.3+

98 Extended Permits selection from the Extended List of Locales

MX: 5.1+

99 Custom Permits selection from the Custom List of Locales

MX: 5.1+

en_CA CANADA English spoken in Canada

OSX: 1.3+

MX: 4.3+

fr_CA CANADA_FRENCH French spoken in Canada

OSX: 1.3+

MX: 4.3+

zh_CN CHINA Chinese spoken in China

OSX: 1.3+

MX: 4.3+

zh CHINESE Chinese (non-region specific)

OSX: 1.3+

MX: 4.3+

en ENGLISH English (non-region specific)

OSX: 1.3+

MX: 4.3+

fr_FR FRANCE French spoken in France

OSX: 1.3+

MX: 4.3+

fr FRENCH French (non-region specific)

OSX: 1.3+

MX: 4.3+

de GERMAN German (non-region specific)

OSX: 1.3+

MX: 4.3+

de_DE GERMANY German spoken in Germany

OSX: 1.3+

MX: 4.3+

it ITALIAN Italian (non-region specific)

OSX: 1.3+

MX: 4.3+

it_IT ITALY Italian spoken in Italy

OSX: 1.3+

MX: 4.3+

ja_JP JAPAN Japanese spoken in Japan

OSX: 1.3+

MX: 4.3+

ja JAPANESE Japanese (non-region specific)

OSX: 1.3+

MX: 4.3+

ko_KR KOREA Korean spoken in Korea

OSX: 1.3+

MX: 4.3+

ko KOREAN Korean (non-region specific)

OSX: 1.3+

MX: 4.3+

zh_CN PRC Alternate Chinese spoken in China

OSX: 1.3+

MX: 4.3+

zh_CN SIMPLIFIED_CHINESE Alternate Chinese spoken in China

OSX: 1.3+

MX: 4.3+

zh_TW TAIWAN Chinese spoken in Taiwan

OSX: 1.3+

MX: 4.3+

zh_TW TRADITIONAL_CHINESE Alternate Chinese spoken in Taiwan

OSX: 1.3+

MX: 4.3+

en_GB UK English spoken in Great Britain/United Kingdom

OSX: 1.3+

MX: 4.3+

en_US US English spoken in the United States of America (USA)

OSX: 1.3+

MX: 4.3+

es_ES SPAIN_SPANISH Spanish spoken in Spain

OSX: 1.3+

MX: 5.0+

es_US US_SPANISH Spanish spoken in the United States of America (USA)

OSX: 1.3+

MX: 5.0+

pt_BR BRAZIL_PORTUGUESE Portuguese spoken in Brazil

OSX: 1.3+

MX: 5.0+

pt_PT PORTUGAL_PORTUGUESE Portuguese spoken in Portugal

OSX: 1.3+

MX: 5.0+

Set a Custom Locale

Permits the selection of the device's Custom Locale. A locale is the combination of a language and a region in which that language is spoken. Languages are identified by two lower-case letters; regions are identified by two upper-case letters. The locale joins the two letter-pairs with an underscore ("_") character. For example, "en_US" is the locale specification for "English spoken in the United States," and "fr_CA" is the locale specification for "French spoken in Canada."

When changing the Locale, it also might be desirable to change the Default Input Method to one that is suitable for entry of characters associated with the language of the selected Locale. Setting a particular Input Method as the Default Input Method does not prevent the device user from manually selecting a different Input Method, it merely determines which Input Method will come up automatically each time that parm is invoked.

Parm value input rules:

  • String containing two lower-case letters corresponding to the language
  • Optionally may contain two upper-case letters designating a region code
  • When a region code is used, letter pairs are joined by an underscore ("_") character. For example: en_US
  • The minimum length is 2 characters; the maximum length is 5 characters

Shown if: Current Locale value is "Custom" (99)

Parm Name: CustomLocale

Requires:

  • MX: 5.1+

Set an Extended Locale

Permits the selection of the device's locale from the list of Extended Locales. A locale is the combination of a language and a region in which that language is spoken. Languages are identified by two lower-case letters; regions are identified by two upper-case letters. The locale joins the two letter-pairs with an underscore ("_") character. For example, "en_US" is the locale specification for "English spoken in the United States," and "fr_CA" is the locale specification for "French spoken in Canada."

When changing the Locale, it also might be desirable to change the Default Input Method to one that is suitable for entry of characters for the language associated with the selected Locale. Setting a particular Input Method as the Default Input Method does not prevent the device user from manually selecting a different Input Method, it merely determines which Input Method will come up automatically each time that parm is invoked.

Parm value input rules:

  • String containing two lower-case letters corresponding to the language
  • Optionally may contain two upper-case letters designating a region code
  • When a region code is used, letter pairs are joined by an underscore ("_") character. For example: en_US
  • The minimum length is 2 characters; the maximum length is 5 characters

Shown if: Current Locale value is "Extended" (98)

Parm Name: ExtendedLocale

Option Name Description Requires
en_AU AUSTRALIA_ENGLISH Not supported on TC55 KitKat

OSX: 1.3+

MX: 5.1+

en_IN INDIA_ENGLISH Not supported on TC55 KitKat

OSX: 1.3+

MX: 5.1+

sv_SE SWEDEN_SWEDISH

OSX: 1.3+

MX: 5.1+

nb_NO NORWAY_NORWEGIAN-BOKMAL

OSX: 1.3+

MX: 5.1+

fi_FI FINLAND_FINISH

OSX: 1.3+

MX: 5.1+

da_DK DENMARK_DANISH

OSX: 1.3+

MX: 5.1+

Set Default Input Method

Controls whether to change the Default Input Method (i.e. a soft keyboard) when that change is requested programmatically or manually by the device user. Setting a particular Input Method as the Default Input Method does not prevent the device user from manually selecting a different Input Method, it merely determines which Input Method will come up automatically each time that parm is invoked. When changing the Current Locale, it may desirable to also change the Default Input Method to one that is suitable for entry of characters that are associated with the selected Locale.

Parm Name: InputMethodAction

Option Name Description Requires
0 Do not change This value (or the absence of this parm from the XML) will cause no change to be made to the Current Default Input Method; any previously selected setting will be retained.

MX: 4.3+

Android API Level: 16+

1 Change Current Input Method This value will change the Current Default Input Method.

MX: 4.3+

Android API Level: 16+

Input Method Package Name

Used to specify the Android Package Name of a user-defined Input Method to be made the Default Input Method (i.e. a soft keyboard).

Note- The specified Package Name must match the Package Name of an Input Method that is already installed. If an attempt is made to specify a Package Name that does not match an installed Input Method, an error will be returned in the Result XML document.

Parm value input rules:

  • String containing the valid Package Name of an Android application that is currently installed and that implements a valid Input Method. For example: com.mycompany.myinputmethod
  • String with a minimum size of 1 character

Shown if: The "Set Default Input Method?" value is "Change Current Input Method" *AND* the "Select a Default Input Method Option" is "User defined Input Method"

Parm Name: InputMethodPackageName

Requires:

  • MX: 4.3+
  • Android API Level: 16+

Input Method Class Name

Used to specify the Android Class Name of a user-defined Input Method to be made the Default Input Method.

Note: The specified Class Name is used in conjunction with the Package Name and must match the name of the class that implements an Input Method within an Android application that is already installed and that has the specified Package Name. If an attempt is made to specify a Class Name that does not match an installed Input Method, an error will be returned.

Parm value input rules:

  • String with a minimum size of 1 character

Shown if: The "Set Default Input Method?" value is "Change Current Input Method" *AND* the "Select a Default Input Method Option" is "User defined Input Method"

Parm Name: InputMethodClassName

Requires:

  • MX: 4.3+
  • Android API Level: 16+

Select a Default Input Method Option

Allows the selection of the Default Input Method (i.e. the soft keyboard). If the selected Input Method is not already enabled, this parm will first enable it and then set it as the new default. The desired Input Method must have been previously installed and must be specified via its Android Package Name and Class Name.

Shown if: The "Set Default Input Method?" value is "Change Current Input Method"

Parm Name: InputMethodOption

Option Name Description Requires
1 English Sets the standard English Input Method as the Default Input Method.

MX: 4.3+

Android API Level: 16+

2 Japanese Sets the standard Japanese Input Method as the Default Input Method.

MX: 4.3+

Android API Level: 16+

3 Chinese(China) Sets the standard Chinese Input Method as the Default Input Method.

MX: 4.3+

Android API Level: 16+

4 User defined Input Method Sets a non-standard user-defined Input Method as the Default Input Method.

MX: 4.3+

Android API Level: 16+

Gear Icon in Notifications Panel Show/Hide

Controls whether the "Gear" icon is displayed in the Android Notifications panel. The Gear icon provides immediate access to Wi-Fi, Bluetooth, GPS and other commonly used System settings without having to go through the Settings panel. The Notifications panel is accessed from most applications by dragging downward from the Notification/Status bar at the top of the Android screen. Hiding the Gear icon can prevent a device user from accessing those Settings and changing device behavior.

Parm Name: NotificationSettings

Option Name Description Requires
0 Do not change This value (or the absence of this parm from the XML) will cause no change to visibility of the Gear icon in the Notifications panel; any previously selected setting will be retained.

OSX: 5.1+

MX: 5.1+

1 Show Shows the Gear icon in the Notifications panel.

OSX: 5.1+

MX: 5.1+

2 Hide Hides the Gear icon in the Notifications panel.

OSX: 5.1+

MX: 5.1+

Notification Pulldown Enable/Disable

Controls whether a device user will be allowed to "pull down" the Notifications/Status bar and access the Notifications panel. Depending on the Android version, the Notifications panel displays application alerts, text messages, widgets and other notifications, and provides access to device Settings. Preventing access to the Notification Pulldown can prevent a device user from accessing device Settings and other system objects that might allow a user to change system behavior or navigate away from the current application.

Parm Name: NotificationPullDown

Option Name Description Requires
0 Do not change This value (or the absence of this parm from the XML) will cause no change to ability of the device user to pull down the Notifications panel; any previously selected setting will be retained.

OSX: 5.1+

MX: 5.1+

1 Enable Allows the Notifications panel to be pulled down.

OSX: 5.1+

MX: 5.1+

2 Disable Prevents the Notifications panel from being pulled down.

OSX: 5.1+

MX: 5.1+

Two-Finger Quick Settings Enable/Disable

Controls whether Quick Settings can be accessed using a two-finger downward swipe gesture on some versions of Android. Quick Settings icons provide immediate access to Wi-Fi, Bluetooth, GPS and other commonly used System settings without having to go through the Settings panel. Disabling Quick Settings access can prevent a device user from changing device behavior.

Parm Name: QuickSettings

Option Name Description Requires
0 Do not change This value (or the absence of this parm from the XML) will cause no change to the accessibility of Quick Settings icons using a two-finger downward swipe; any previously selected setting will be retained.

OSX: 5.2+

MX: 5.2+

1 Enable Enables access to Quick Settings using a two-finger downward swipe.

OSX: 5.2+

MX: 5.2+

2 Disable Disables access to Quick Settings using a two-finger downward swipe.

OSX: 5.2+

MX: 5.2+

Examples

Configuring Device Region and Keyboard


<wap-provisioningdoc>
  <characteristic type="UiMgr" version="4.3" >
    <parm name="CurrentLocale" value="en_GB"/>
    <parm name="InputMethodAction" value="1"/>
    <characteristic type="InputMethodDetails">
      <parm name="InputMethodOption" value="1"/>
    </characteristic>
  </characteristic>
</wap-provisioningdoc>

Set Enterprise Keyboard as the Default Input Method

<wap-provisioningdoc>
    <characteristic type="UiMgr" version="4.3" >
        <parm name="InputMethodAction" value="1"/>
        <characteristic type="InputMethodDetails">
        <parm name="InputMethodOption" value="4"/>
        <parm name="InputMethodPackageName" value="com.symbol.mxmf.csp.enterprisekeyboard"/>
        <parm name="InputMethodClassName" value="com.android.inputmethod.latin.LatinIME"/>
        </characteristic>
    </characteristic>
</wap-provisioningdoc>

Queries

Get Current Locale

Input


 <wap-provisioningdoc>
    <characteristic type="UiMgr" version="4.3" >
        <parm-query name="CurrentLocale"/>
    </characteristic>
</wap-provisioningdoc>

Output


<wap-provisioningdoc>
    <characteristic type="UiMgr" version="4.3" >
        <parm name="CurrentLocale" value="en"/>
    </characteristic>
</wap-provisioningdoc>

Get Home Key Usage

Input


<wap-provisioningdoc>
<characteristic type="UiMgr" version="4.3" >
  <parm-query name="HomeKeyUsage"/>
</characteristic>

Output


<wap-provisioningdoc>
    <characteristic type="UiMgr" version="4.3" >
        <parm name="HomeKeyUsage" value="1"/>
    </characteristic>
</wap-provisioningdoc>

Get Clipboard Usage

Input


<wap-provisioningdoc>
    <characteristic type="UiMgr" version="4.3" >
        <parm-query name="ClipboardUsage"/>
    </characteristic>
</wap-provisioningdoc>

Output


<wap-provisioningdoc>
    <characteristic type="UiMgr" version="4.3" >
        <parm name="ClipboardUsage" value="1"/>
    </characteristic>
</wap-provisioningdoc>

Get AutoCorrect Usage

Input


<wap-provisioningdoc>
    <characteristic type="UiMgr" version="4.3" >
        <parm-query name="AutoCorrectUsage"/>
    </characteristic>
</wap-provisioningdoc>

Output


<wap-provisioningdoc>
    <characteristic type="UiMgr" version="4.3" >
        <parm name="AutoCorrectUsage" value ="1"/> 
    </characteristic>
</wap-provisioningdoc>

Get Paring Popup

Input


<wap-provisioningdoc>
    <characteristic type="UiMgr" version="4.3" >
        <parm-query name="BluetoothPairingPopupUsage"/>
    </characteristic>
</wap-provisioningdoc>

Output


<wap-provisioningdoc>
    <characteristic type="UiMgr" version="4.3" >
        <parm name="BluetoothPairingPopupUsage" value="1"/>
    </characteristic>
</wap-provisioningdoc>

Get Input Methods

Input


<wap-provisioningdoc>
    <characteristic type="UiMgr" version="4.3" >
        <characteristic-query type="InputMethodDetails"/>
    </characteristic>
</wap-provisioningdoc>

Output Selected Input


 <wap-provisioningdoc>
    <characteristic type="UiMgr" version="4.3" >
        <parm name="InputMethodAction" value="1"/>
        <characteristic-query type="InputMethodDetails">
            <parm name="InputMethodOption" value="1"/>
        </characteristic>
    </characteristic>

Output Custom Input


<characteristic type="UiMgr" version="4.3" >
    <parm name="InputMethodAction" value="1"/>
    <characteristic type="InputMethodDetails">
        <parm name="InputMethodOption" value="4"/>
        <parm name="InputMethodPackageName" value="PackageName1"/>
        <parm name="InputMethodClassName" value="ClassName1"/>
    </characteristic>
</characteristic>

Get All Settings

Input


<wap-provisioningdoc>
    <characteristic-query type="UiMgr"/>
</wap-provisioningdoc>

Output


<wap-provisioningdoc>
  <characteristic type="UiMgr" version="4.3" >
        <parm name="CurrentLocale" value="en"/>
        <parm name="HomeKeyUsage" value="1"/>
        <parm name="ClipboardUsage" value ="1"/>
        <parm name="AutoCorrectUsage" value ="1"/> 
        <parm name="InputMethodAction" value="1"/>
        <parm name="BluetoothPairingPopupUsage" value="1"/>
        <characteristic type="InputMethodDetails">
          <parm name="InputMethodOption" value="4"/>
          <parm name="InputMethodPackageName" value="PackageName1"/>
          <parm name="InputMethodClassName" value="ClassName1"/>
        </characteristic>
    </characteristic>
</wap-provisioningdoc>