Wireless Manager

EMDK For Xamarin - 2.5

Overview

The WirelessMgr controls usage of all radios on the device, which can include Bluetooth, GPS, NFC and WWAN radios. Through control of device radios, the WirelessMgr permits administrators to prevent device users from accessing any of a given radio's functions or those of the devices or networks they connect with, providing a measure of security that is impenetrable by the device user.

The WirelessMgr also can control the GPS Location Mode to help preserve battery life, and on some devices the state (active/inactive) of the Bluetooth radio.

It's important to distinguish between the terms "State" and "Usage." The State of a radio refers to whether that radio is turned on (and available for communication), or off (inactive). Usage determines whether that radio is enabled on the device. A radio's State can be controlled by the device user or administrator only if its Usage is Turned On (enabled).

Android devices often come with a variety of wireless communication interfaces. These include bidirectional interfaces such as Bluetooth, Wireless Wide Area Network (WWAN/cellular data), Near Field Communications (NFC) and the unidirectional (receive-only) Global Positioning System (GPS). Wireless radios that can transmit may significantly effect battery life if turned on unnecessarily. Some radios also might need to be turned off in certain situations, such as during air travel or when in hazardous environments.

Main Functionality

  • Enable/Disable user access to device radios:
    • Bluetooth
    • Near Field Communication (NFC)
    • Global Positioning System (GPS)
    • Wireless Wide Area Network (WWAN/cellular data)
  • Control State of the Bluetooth radio
  • Select GPS Location Mode to control battery usage:
    • High accuracy
    • Battery savings
    • Device only

Bluetooth Enable/Disable

For KitKat devices on which the Bluetooth radio is Turned On, controls whether the Bluetooth functionality on the device is active.

On Jelly Bean devices, this is the On/Off switch for the Bluetooth radio, which controls whether Bluetooth can be used on the device. If Enabled, the Jelly Bean device user can pair and connect with other Bluetooth devices make changes to the Bluetooth State (active/inactive).

Parm Name: Bluetooth

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 state of the Bluetooth radio; any previously selected setting will be retained.

OSX: 4.2+

MX: 4.2+

1 Enable On KitKat devices, puts the Bluetooth radio (if Turned On) in an active state. On Jelly Bean devices, Turns On the Bluetooth radio, enabling its usage on the device and changes to its state.

OSX: 4.2+

MX: 4.2+

2 Disable On KitKat devices, puts the Bluetooth radio (if Turned On) in an inactive state. On Jelly Bean devices, Turns Off the Bluetooth radio, preventing its usage on the device and changes to its state.

OSX: 4.2+

MX: 4.2+

Bluetooth Turn On/Off

The On/Off switch for the Bluetooth radio, which controls whether the State of the radio (active/inactive) can be changed by the device user. Turning On the Bluetooth radio allows the device to pair with other Bluetooth devices and connect with devices previously paired.

Note: This parm is available only on devices running KitKat and higher.

Parm Name: BluetoothState

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 Bluetooth radio state; any previously selected setting will be retained.

MX: 4.3+

Android API Level: 5+

1 Turn On Turns On the Bluetooth radio, enabling usage and changes to its state.

MX: 4.3+

Android API Level: 5+

2 Turn Off Turns Off the Bluetooth radio, preventing all usage.

MX: 4.3+

Android API Level: 5+

GPS Radio On/Off

The On/Off switch for the Global Positioning System (GPS) radio, which allows the device to receive information from GPS satellites to determine the position of the device and controls whether the device user can change the State of the radio (active/inactive).

Parm Name: GPSState

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 GPS radio usage status; any previously selected setting will be retained.

MX: 4.3+

Android API Level: 1+

1 Turn On Turns On the GPS radio, enabling usage and changes to its state.

MX: 4.3+

Android API Level: 1+

2 Turn Off Turns Off the GPS radio, preventing all usage.

MX: 4.3+

Android API Level: 1+

GPS Location Mode

Permits selection of the GPS Location Mode for determining the device location, allowing for scanrios in which location accuracy can be sacrified in favor of longer battery life. This parm uses Android's three location modes:

  • High Accuracy mode suppliments information from the built-in GPS receiver with Wi-Fi and cellular data to calculate the location with the highest degree of precision. This option draws the most energy.

  • Battery saving mode uses only Wi-Fi and cellular data to determine location, but doesn't work with Google Maps and similar apps. This option draws the least energy.

  • Device only mode uses only GPS data, but is subject to signal loss in some settings.

Parm Name: GPSLocationMode

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 GPS Location Mode; any previously selected setting will be retained.

MX: 6.1+

Android API Level: 1+

1 High Accuracy Uses GPS, Wi-Fi and cellular network information to determine device location with the highest degree of accuracy.

MX: 6.1+

Android API Level: 1+

2 Battery Saving Determines device location using only Wi-Fi and cellular information, preserving battery life.

MX: 6.1+

Android API Level: 1+

3 Device Only Determines location using only the GPS radio, which is subject to signal loss in some settings.

MX: 6.1+

Android API Level: 1+

NFC Radio On/Off

The On/Off switch for the Near Field Communications (NFC) radio, which allows the device to communicate with NFC tags by reading from or writing to them when they are in near proximity to the device, and controls whether the device user can change State of the radio (active/inactive).

Parm Name: NFCState

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 NFC radio usage status; any previously selected setting will be retained.

MX: 4.3+

Android API Level: 10+

1 Turn On Turns On the NFC radio, enabling usage and changes to its state.

MX: 4.3+

Android API Level: 10+

2 Turn Off Turns Off the NFC radio, preventing all usage.

MX: 4.3+

Android API Level: 10+

WWAN Radio On/Off

The On/Off switch for Wireless Wide Area Network (WWAN) cellular radio, which allows the device to establish a cellular data connection to enable cellular voice connections, if supported. Also controls whether the device user can change the State of the radio (active/inactive).

Parm Name: WWANState

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 WWAN radio usage setting; any previously selected setting will be retained.

OSX: 4.3+

MX: 4.3+

1 Turn On Turns On the WWAN radio, enabling usage and changes to its state.

OSX: 4.3+

MX: 4.3+

2 Turn Off Turns Off the WWAN radio, preventing all usage.

OSX: 4.3+

MX: 4.3+

Examples

Enable Changes to be made to Bluetooth State

Note: In JellyBean devices, this XML will change the state of the Bluetooth radio by Turning it On.


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

Disable Changes from being made to Bluetooth State

Note: In JellyBean devices, this XML will change the state of the Bluetooth radio by Turning it Off.


<wap-provisioningdoc>
    <characteristic type="WirelessMgr" version="4.3" >
        <parm name="Bluetooth" value="2"/>
    </characteristic>
</wap-provisioningdoc>

Turn On All Radios (For JellyBean Devices)


<wap-provisioningdoc>
    <characteristic type="WirelessMgr" version="4.3" >
        <parm name="Bluetooth" value="1"/>
        <parm name="NFCState" value="1"/>
        <parm name="GPSState" value="1"/>
        <parm name="WWANState" value="1"/>
    </characteristic>
</wap-provisioningdoc>

Turn Off All Radios (For JellyBean Devices)


<wap-provisioningdoc>
    <characteristic type="WirelessMgr" version="4.3" >
        <parm name="Bluetooth" value="2"/>
        <parm name="NFCState" value="2"/>
        <parm name="GPSState" value="2"/>
        <parm name="WWANState" value="2"/>
    </characteristic>
</wap-provisioningdoc>

Turn On All Radios (For KitKat Devices)


<wap-provisioningdoc>
    <characteristic type="WirelessMgr" version="4.3" >
        <parm name="BluetoothState" value="1"/>
        <parm name="NFCState" value="1"/>
        <parm name="GPSState" value="1"/>
        <parm name="WWANState" value="1"/>
    </characteristic>
</wap-provisioningdoc>

Turn Off All Radios (For KitKat Devices)


<wap-provisioningdoc>
    <characteristic type="WirelessMgr" version="4.3" >
        <parm name="BluetoothState" value="2"/>
        <parm name="NFCState" value="2"/>
        <parm name="GPSState" value="2"/>
        <parm name="WWANState" value="2"/>
    </characteristic>
</wap-provisioningdoc>