The Power Manager (PowerMgr) allows an app to perform certain OS- and power-related actions on the device. These include rebooting or performing an OS update, resetting the device to a factory-fresh state or putting the device into Sleep mode. On some devices, such as the VC8x vehicle-mounted computer and similarly equipped Zebra devices, PowerMgr also can control device heaters and perform actions based on ignition status of the vehicle. PowerMgr performs only actions; it currently supports no queries other than to determine the version of the CSP that implements PowerMgr itself.
It's important to note that PowerMgr actions such as Reboot and Reset, once executed, prevent the execution of subsequent actions submitted by the Request XML document, including the submission of a Result XML to the application sending the original Request. Zebra therefore recommends using Condition Manager in conjunction with PowerMgr to ensure that appropriate conditions exist on a device before attempting to perform "risky" operations such as OS updates, the failure of which can render a device unusable, severely limited or otherwise in need of service.
.zip file from a URLOn Android devices, Sleep mode turns off the device display screen and places some subsystems into low-power states. Depending on device configuration settings, certain apps and/or subsystems such as Wi-Fi and Cellular might remain active.
Rebooting an Android device generally causes only volatile information such as application state and transient data to be lost. Non-volatile data such as device settings and stored apps and data are preserved. A Reboot is sometimes referred to as a "Reset" or "Normal Reset," but is not to be confused with an Enterprise Reset or Factory Reset (explained below).
IMPORTANT: The Reboot Action causes the device to immediately restart, which prevents any subsequent Actions from executing, including the submission of a Result XML to the application sending the original request.
Enterprise Reset is intended to return the device to an enterprise-defined default state, generally as determined by the contents of the /enterprise partition. On Zebra devices running Android, an Enterprise Reset is the same as a Factory Reset except that the /enterprise partition is preserved. This action is supported only on Zebra devices running Android 4.4 KitKat and later. On Zebra Android devices running Android Jelly Bean or earlier, the same action could be performed using the "OS Update" action if a suitable OS Update .zip file was used.
Note: The Enterprise Reset Action causes the device to Reboot (into Recovery Mode), preventing any subsequent Actions from executing, including the submission of a Result XML to the application sending the original request.
BEST PRACTICE: Enterprise Reset should be triggered only through Power Manager and only with the Setup Wizard Bypass flag set to "true." Manually triggering Enterprise Reset without setting the bypass flag could leave the device in an unexpected state.
Setup Wizard Bypass is discontinued on devices running Android 13 and later.
The Factory Reset is intended to return the device to its factory-fresh condition with the exception of certain conditions related to its internal storage card(s) (see below). On Zebra devices running Android, a Factory Reset erases all key partitions and storage cards containing /data, /cache, and /enterprise partitions. This action is supported only on Zebra devices running Android 4.4 KitKat and later. On Zebra Android devices running Android Jelly Bean or earlier, the same action could be performed using the "OS Update" Action if a suitable OS Update .zip file was used.
The Factory Reset Action causes the device to Reboot into Recovery Mode, which prevents any subsequent Actions from executing, including the submission of a Result XML to the application sending the original request.
A Factory Reset will erase a storage card if:
/data or /enterprise partitionsA Factory Reset will NOT erase a storage card if:
The Full Device Wipe is intended to return the device to its condition as it would have shipped from the factory with its current OS plus any subsequent OS update(s). On Zebra Android devices, a Full Device Wipe is the same as a Factory Reset plus the unconditional erasure of all storage cards. This action is supported only on Zebra devices running Android 4.4 KitKat and later. On Zebra Android devices running Android Jelly Bean or lower, the same action could be performed using the "OS Update" Action if a suitable OS Update .zip file was used.
Note: This Action causes the device to Reboot (into Recovery Mode), which prevents any subsequent Actions from executing, including the submission of a Result XML to the application sending the original request.
The OS Update allows the device operating system to be replaced or patched using a specified OS Update Zip File or a text file containing a list of OS updates and/or patches. Depending on the contents of the file(s), this process also can be used to perform an OS Downgrade (on devices some), Enterprise Reset, Factory Reset or Full Device Wipe to facilitate the installation of the update or patch contained in the file(s).
Devices running Android 7.x Nougat and below support OS Update only. Devices with Android 8.x Oreo and later support Upgrade and Downgrade Actions and the Suppress Reboot parameter.
Use the following basic steps to perform an OS Upgrade on devices running Android 8.x Oreo or later. Steps might vary slightly depending on the device(s), the environment or other factors.
To perform an OS Upgrade:
.zip file to internal storage (/storage/sdcard0) of the unit under test (UUT)..zip file in UUT (see sample XML below).
<wap-provisioningdoc>
<characteristic type="PowerMgr" version="8.1" >
<parm name="ResetAction" value="10"/>
<characteristic type="file-details">
<parm name="ZipFile" value="/storage/sdcard0/name_of_upgrade_file.zip"/> // <-- upgrade .zip file
</characteristic>
<parm name="SuppressReboot" value="2"/>
</characteristic>
</wap-provisioningdoc>
Use the following basic steps to perform an OS Downgrade on devices running Android 8.x Oreo or later. Steps might vary slightly depending on the device(s), the environment or other factors.
NOTE: Downgrades are supported ONLY when moving from one Android version to another. Downgrades within the same Android version (for example to move to an earlier patch level) are NOT supported using this function.
To perform an OS Downgrade:
.zip file to internal storage (/storage/sdcard0) of the UUT..zip file in UUT (see sample XML below).
<wap-provisioningdoc>
<characteristic type="PowerMgr" version="8.1" >
<parm name="ResetAction" value="11"/>
<characteristic type="file-details">
<parm name="ZipFile" value="/storage/sdcard0/name_of_downgrade_file.zip"/> // <-- downgrade .zip file
</characteristic>
</characteristic>
</wap-provisioningdoc>