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_AFFILIATED
Value for |
int |
HEADLESS_DEVICE_OWNER_MODE_SINGLE_USER
Value for |
int |
HEADLESS_DEVICE_OWNER_MODE_UNSUPPORTED
Value for |
int |
USES_ENCRYPTED_STORAGE
A type of policy that this device admin can use: require encryption of stored data. |
int |
USES_POLICY_DISABLE_CAMERA
A type of policy that this device admin can use: disables use of all device cameras. |
int |
USES_POLICY_DISABLE_KEYGUARD_FEATURES
A type of policy that this device admin can use: disables use of keyguard features. |
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. |
int |
USES_POLICY_FORCE_LOCK
A type of policy that this device admin can use: able to force the device
to lock via |
int |
USES_POLICY_LIMIT_PASSWORD
A type of policy that this device admin can use: limit the passwords
that the user can select, via |
int |
USES_POLICY_RESET_PASSWORD
A type of policy that this device admin can use: able to reset the
user's password via
|
int |
USES_POLICY_WATCH_LOGIN
A type of policy that this device admin can use: able to watch login
attempts from the user, via |
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
|
Inherited constants |
|---|
Fields | |
|---|---|
public
static
final
Creator<DeviceAdminInfo> |
CREATOR
Used 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 0 or CONTENTS_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, or HEADLESS_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: The Parcel to be written. |
flags |
int: The flags used for parceling. |