DeviceAdminInfo
  public
  
  final
  
  class
  DeviceAdminInfo
  
    extends Object
  
  
  
  
  
      implements
      
        Parcelable
      
  
  
| java.lang.Object | |
| ↳ | android.app.admin.DeviceAdminInfo | 
This class is used to specify meta information of a device administrator component.
Summary
| Constants | |
|---|---|
| int | HEADLESS_DEVICE_OWNER_MODE_AFFILIATEDValue for  | 
| int | HEADLESS_DEVICE_OWNER_MODE_SINGLE_USERValue for  | 
| int | HEADLESS_DEVICE_OWNER_MODE_UNSUPPORTEDValue for  | 
| int | USES_ENCRYPTED_STORAGEA type of policy that this device admin can use: require encryption of stored data. | 
| int | USES_POLICY_DISABLE_CAMERAA type of policy that this device admin can use: disables use of all device cameras. | 
| int | USES_POLICY_DISABLE_KEYGUARD_FEATURESA type of policy that this device admin can use: disables use of keyguard features. | 
| int | USES_POLICY_EXPIRE_PASSWORDA type of policy that this device admin can use: force the user to change their password after an administrator-defined time limit. | 
| int | USES_POLICY_FORCE_LOCKA type of policy that this device admin can use: able to force the device
 to lock via | 
| int | USES_POLICY_LIMIT_PASSWORDA type of policy that this device admin can use: limit the passwords
 that the user can select, via  | 
| int | USES_POLICY_RESET_PASSWORDA type of policy that this device admin can use: able to reset the
 user's password via
  | 
| int | USES_POLICY_WATCH_LOGINA type of policy that this device admin can use: able to watch login
 attempts from the user, via  | 
| int | USES_POLICY_WIPE_DATAA type of policy that this device admin can use: able to factory
 reset the device, erasing all of the user's data, via
  | 
| Inherited constants | 
|---|
| Fields | |
|---|---|
| 
    public
    static
    final
    Creator<DeviceAdminInfo> | CREATORUsed to make this class parcelable. | 
| Public constructors | |
|---|---|
| 
      DeviceAdminInfo(Context context, ResolveInfo resolveInfo)
      Constructor. | |
| Public methods | |
|---|---|
| 
        
        
        
        
        
        int | 
      describeContents()
      Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. | 
| 
        
        
        
        
        
        void | 
      dump(Printer pw, String prefix)
       | 
| 
        
        
        
        
        
        ActivityInfo | 
      getActivityInfo()
      Return the raw information about the receiver implementing this device admin. | 
| 
        
        
        
        
        
        ComponentName | 
      getComponent()
      Return the component of the receiver that implements this device admin. | 
| 
        
        
        
        
        
        int | 
      getHeadlessDeviceOwnerMode()
      Returns the mode this DeviceAdmin wishes to use if provisioned as a Device Owner on a headless system user mode device. | 
| 
        
        
        
        
        
        String | 
      getPackageName()
      Return the .apk package that implements this device admin. | 
| 
        
        
        
        
        
        String | 
      getReceiverName()
      Return the class name of the receiver component that implements this device admin. | 
| 
        
        
        
        
        
        String | 
      getTagForPolicy(int policyIdent)
      Return the XML tag name for the given policy identifier. | 
| 
        
        
        
        
        
        boolean | 
      isVisible()
      Returns whether this device admin would like to be visible to the user, even when it is not enabled. | 
| 
        
        
        
        
        
        CharSequence | 
      loadDescription(PackageManager pm)
      Load user-visible description associated with this device admin. | 
| 
        
        
        
        
        
        Drawable | 
      loadIcon(PackageManager pm)
      Load the user-displayed icon for this device admin. | 
| 
        
        
        
        
        
        CharSequence | 
      loadLabel(PackageManager pm)
      Load the user-displayed label for this device admin. | 
| 
        
        
        
        
        
        boolean | 
      supportsTransferOwnership()
      Return true if this administrator can be a target in an ownership transfer. | 
| 
        
        
        
        
        
        String | 
      toString()
      Returns a string representation of the object. | 
| 
        
        
        
        
        
        boolean | 
      usesPolicy(int policyIdent)
      Return true if the device admin has requested that it be able to use the given policy control. | 
| 
        
        
        
        
        
        void | 
      writeToParcel(Parcel dest, int flags)
      Used to package this object into a  | 
| Inherited methods | |
|---|---|
Constants
HEADLESS_DEVICE_OWNER_MODE_AFFILIATED
public static final int HEADLESS_DEVICE_OWNER_MODE_AFFILIATED
Value for getHeadlessDeviceOwnerMode() which indicates that this DPC should be
 provisioned into "affiliated" mode when on a Headless System User Mode device.
 
This mode adds a Profile Owner to all users other than the user the Device Owner is on.
Starting from Android version Build.VERSION_CODES.VANILLA_ICE_CREAM,
 DPCs should set the value of attribute "headless-device-owner-mode" inside the
 "headless-system-user" tag as "affiliated".
Constant Value: 1 (0x00000001)
HEADLESS_DEVICE_OWNER_MODE_SINGLE_USER
public static final int HEADLESS_DEVICE_OWNER_MODE_SINGLE_USER
Value for getHeadlessDeviceOwnerMode() which indicates that this DPC should be
 provisioned into the first secondary user when on a Headless System User Mode device.
 
This mode only allows a single secondary user on the device blocking the creation of additional secondary users.
Starting from Android version Build.VERSION_CODES.VANILLA_ICE_CREAM,
 DPCs should set the value of attribute "headless-device-owner-mode" inside the
 "headless-system-user" tag as "single_user".
Constant Value: 2 (0x00000002)
HEADLESS_DEVICE_OWNER_MODE_UNSUPPORTED
public static final int HEADLESS_DEVICE_OWNER_MODE_UNSUPPORTED
Value for getHeadlessDeviceOwnerMode() which indicates that this DPC should not
 be provisioned into Device Owner mode on a Headless System User Mode device.
Constant Value: 0 (0x00000000)
USES_ENCRYPTED_STORAGE
public static final int USES_ENCRYPTED_STORAGE
A type of policy that this device admin can use: require encryption of stored data.
To control this policy, the device admin must have a "encrypted-storage" tag in the "uses-policies" section of its meta-data.
Constant Value: 7 (0x00000007)
USES_POLICY_DISABLE_CAMERA
public static final int USES_POLICY_DISABLE_CAMERA
A type of policy that this device admin can use: disables use of all device cameras.
To control this policy, the device admin must be a device owner or profile owner, and must have a "disable-camera" tag in the "uses-policies" section of its meta-data. If used by a device owner, the policy affects all users on the device.
Constant Value: 8 (0x00000008)
USES_POLICY_DISABLE_KEYGUARD_FEATURES
public static final int USES_POLICY_DISABLE_KEYGUARD_FEATURES
A type of policy that this device admin can use: disables use of keyguard features.
To control this policy, the device admin must be a device owner or profile owner, and must have a "disable-keyguard-features" tag in the "uses-policies" section of its meta-data. If used by a device owner, the policy only affects the primary user and its profiles, but not any secondary users on the device.
Constant Value: 9 (0x00000009)
USES_POLICY_EXPIRE_PASSWORD
public static final int USES_POLICY_EXPIRE_PASSWORD
A type of policy that this device admin can use: force the user to change their password after an administrator-defined time limit.
To control this policy, the device admin must be a device owner or profile owner, and must have an "expire-password" tag in the "uses-policies" section of its meta-data. If used by a device owner, the policy only affects the primary user and its profiles, but not any secondary users on the device.
Constant Value: 6 (0x00000006)
USES_POLICY_FORCE_LOCK
public static final int USES_POLICY_FORCE_LOCK
A type of policy that this device admin can use: able to force the device
 to lock viaDevicePolicyManager.lockNow or limit the
 maximum lock timeout for the device via
 DevicePolicyManager.setMaximumTimeToLock.
 
To control this policy, the device admin must have a "force-lock" tag in the "uses-policies" section of its meta-data.
Constant Value: 3 (0x00000003)
USES_POLICY_LIMIT_PASSWORD
public static final int USES_POLICY_LIMIT_PASSWORD
A type of policy that this device admin can use: limit the passwords
 that the user can select, via DevicePolicyManager.setPasswordQuality
 and DevicePolicyManager.setPasswordMinimumLength.
 
To control this policy, the device admin must be a device owner or profile owner, and must have a "limit-password" tag in the "uses-policies" section of its meta-data. If used by a device owner, the policy only affects the primary user and its profiles, but not any secondary users on the device.
Constant Value: 0 (0x00000000)
USES_POLICY_RESET_PASSWORD
public static final int USES_POLICY_RESET_PASSWORD
A type of policy that this device admin can use: able to reset the
 user's password via
 DevicePolicyManager.resetPassword.
 
To control this policy, the device admin must have a "reset-password" tag in the "uses-policies" section of its meta-data.
Constant Value: 2 (0x00000002)
USES_POLICY_WATCH_LOGIN
public static final int USES_POLICY_WATCH_LOGIN
A type of policy that this device admin can use: able to watch login
 attempts from the user, via DeviceAdminReceiver.ACTION_PASSWORD_FAILED,
 DeviceAdminReceiver.ACTION_PASSWORD_SUCCEEDED, and
 DevicePolicyManager.getCurrentFailedPasswordAttempts.
 
To control this policy, the device admin must have a "watch-login" tag in the "uses-policies" section of its meta-data.
Constant Value: 1 (0x00000001)
USES_POLICY_WIPE_DATA
public static final int USES_POLICY_WIPE_DATA
A type of policy that this device admin can use: able to factory
 reset the device, erasing all of the user's data, via
 DevicePolicyManager.wipeData.
 
To control this policy, the device admin must have a "wipe-data" tag in the "uses-policies" section of its meta-data.
Constant Value: 4 (0x00000004)
Fields
CREATOR
public static final Creator<DeviceAdminInfo> CREATOR
Used to make this class parcelable.
Public constructors
DeviceAdminInfo
public DeviceAdminInfo (Context context, ResolveInfo resolveInfo)
Constructor.
| Parameters | |
|---|---|
| context | Context: The Context in which we are parsing the device admin. | 
| resolveInfo | ResolveInfo: The ResolveInfo returned from the package manager about
 this device admin's component. | 
| Throws | |
|---|---|
| IOException | |
| XmlPullParserException | |
Public methods
describeContents
public int describeContents ()
Describe the kinds of special objects contained in this Parcelable
 instance's marshaled representation. For example, if the object will
 include a file descriptor in the output of writeToParcel(android.os.Parcel, int),
 the return value of this method must include the
 CONTENTS_FILE_DESCRIPTOR bit.
| Returns | |
|---|---|
| int | a bitmask indicating the set of special object types marshaled
 by this Parcelable object instance.
 Value is either 0orCONTENTS_FILE_DESCRIPTOR | 
dump
public void dump (Printer pw, String prefix)
| Parameters | |
|---|---|
| pw | Printer | 
| prefix | String | 
getActivityInfo
public ActivityInfo getActivityInfo ()
Return the raw information about the receiver implementing this device admin. Do not modify the returned object.
| Returns | |
|---|---|
| ActivityInfo | |
getComponent
public ComponentName getComponent ()
Return the component of the receiver that implements this device admin.
| Returns | |
|---|---|
| ComponentName | This value cannot be null. | 
getHeadlessDeviceOwnerMode
public int getHeadlessDeviceOwnerMode ()
Returns the mode this DeviceAdmin wishes to use if provisioned as a Device Owner on a headless system user mode device.
| Returns | |
|---|---|
| int | Value is HEADLESS_DEVICE_OWNER_MODE_UNSUPPORTED,HEADLESS_DEVICE_OWNER_MODE_AFFILIATED, orHEADLESS_DEVICE_OWNER_MODE_SINGLE_USER | 
getPackageName
public String getPackageName ()
Return the .apk package that implements this device admin.
| Returns | |
|---|---|
| String | |
getReceiverName
public String getReceiverName ()
Return the class name of the receiver component that implements this device admin.
| Returns | |
|---|---|
| String | |
getTagForPolicy
public String getTagForPolicy (int policyIdent)
Return the XML tag name for the given policy identifier.  Valid identifiers
 are as per usesPolicy(int).  If the given identifier is not
 known, null is returned.
| Parameters | |
|---|---|
| policyIdent | int | 
| Returns | |
|---|---|
| String | |
isVisible
public boolean isVisible ()
Returns whether this device admin would like to be visible to the user, even when it is not enabled.
| Returns | |
|---|---|
| boolean | |
loadDescription
public CharSequence loadDescription (PackageManager pm)
Load user-visible description associated with this device admin.
| Parameters | |
|---|---|
| pm | PackageManager: Supply a PackageManager used to load the device admin's
 resources. | 
| Returns | |
|---|---|
| CharSequence | |
| Throws | |
|---|---|
| Resources.NotFoundException | |
loadIcon
public Drawable loadIcon (PackageManager pm)
Load the user-displayed icon for this device admin.
| Parameters | |
|---|---|
| pm | PackageManager: Supply a PackageManager used to load the device admin's
 resources. | 
| Returns | |
|---|---|
| Drawable | |
loadLabel
public CharSequence loadLabel (PackageManager pm)
Load the user-displayed label for this device admin.
| Parameters | |
|---|---|
| pm | PackageManager: Supply a PackageManager used to load the device admin's
 resources. | 
| Returns | |
|---|---|
| CharSequence | |
supportsTransferOwnership
public boolean supportsTransferOwnership ()
Return true if this administrator can be a target in an ownership transfer.
| Returns | |
|---|---|
| boolean | |
toString
public String toString ()
Returns a string representation of the object.
| Returns | |
|---|---|
| String | a string representation of the object. | 
usesPolicy
public boolean usesPolicy (int policyIdent)
Return true if the device admin has requested that it be able to use
 the given policy control.  The possible policy identifier inputs are:
 USES_POLICY_LIMIT_PASSWORD, USES_POLICY_WATCH_LOGIN,
 USES_POLICY_RESET_PASSWORD, USES_POLICY_FORCE_LOCK,
 USES_POLICY_WIPE_DATA,
 USES_POLICY_EXPIRE_PASSWORD, USES_ENCRYPTED_STORAGE,
 USES_POLICY_DISABLE_CAMERA.
| Parameters | |
|---|---|
| policyIdent | int | 
| Returns | |
|---|---|
| boolean | |
writeToParcel
public void writeToParcel (Parcel dest, int flags)
Used to package this object into a Parcel.
| Parameters | |
|---|---|
| dest | Parcel: TheParcelto be written. | 
| flags | int: The flags used for parceling. | 
