The DeviceManagerAgent provides APIs to manage the local and remote devices. Refer Javadoc for complete API list.

The following are the main functionalities provided by this agent:

  • Install package to local or remote devices
  • Uninstall package to local or remote devices
  • Request remote device information
  • Control brightness of local/remote devices
  • Control screen time out of local/remote devices
  • Control volume of local/remote devices
  • Set/clear wallpaper of local/remote devices
  • Enable/Disable GPS, Wi-Fi of local/remote devices
  • Enable/Disable device rotation of local/remote devices
  • Gets the total and free memory of local/remote devices

The following Listeners can be registered to this agent and get the respective callbacks:

  • InstalledApplicationListener: To listen for installed application list from a specific user.
  • DeviceRotationStatusListener: To listen for device rotation change
  • PackageInstallListener: To listen for package installation status like start, success, fail, and skip.
  • WallpaperFileDistributionListener: To listen for wallpaper sending status by the file sender.
  • DeviceStatusListener: To listen for device information like battery level, memory, rssi, ssid, bssid, and Wi-Fi link speed. The processed information is sent from session participants to master.
  • VolumeChangedListener: To listen for volume changes by master.
  • VolumeMutedUserChangedListener: To notify changes in the list of users muted by master.

Permissions required

  • Install/Uninstall package: android.permission.sec.MDM_APP_MGMT
  • Disallow install or uninstall app: android.permission.sec.MDM_RESTRICTION