Android APIs
public class

RestrictionEntry

extends Object
implements Parcelable
java.lang.Object
   ↳ android.content.RestrictionEntry

Class Overview

Applications can expose restrictions for a restricted user on a multiuser device. The administrator can configure these restrictions that will then be applied to the restricted user. Each RestrictionsEntry is one configurable restriction.

Any application that chooses to expose such restrictions does so by implementing a receiver that handles the ACTION_GET_RESTRICTION_ENTRIES action. The receiver then returns a result bundle that contains an entry called "restrictions", whose value is an ArrayList.

Summary

Constants
int TYPE_BOOLEAN Restriction of type "bool".
int TYPE_BUNDLE Restriction of type "bundle".
int TYPE_BUNDLE_ARRAY Restriction of type "bundle_array".
int TYPE_CHOICE Restriction of type "choice".
int TYPE_INTEGER Restriction of type "integer".
int TYPE_MULTI_SELECT Restriction of type "multi-select".
int TYPE_NULL Hidden restriction type.
int TYPE_STRING Restriction of type "string".
[Expand]
Inherited Constants
From interface android.os.Parcelable
Fields
public static final Creator<RestrictionEntry> CREATOR
Public Constructors
RestrictionEntry(int type, String key)
Constructor for specifying the type and key, with no initial value;
RestrictionEntry(String key, String selectedString)
Constructor for TYPE_CHOICE type.
RestrictionEntry(String key, boolean selectedState)
Constructor for TYPE_BOOLEAN type.
RestrictionEntry(String key, String[] selectedStrings)
Constructor for TYPE_MULTI_SELECT type.
RestrictionEntry(String key, int selectedInt)
Constructor for TYPE_INTEGER type.
RestrictionEntry(Parcel in)
Public Methods
static RestrictionEntry createBundleArrayEntry(String key, RestrictionEntry[] restrictionEntries)
Creates an entry of type TYPE_BUNDLE_ARRAY.
static RestrictionEntry createBundleEntry(String key, RestrictionEntry[] restrictionEntries)
Creates an entry of type TYPE_BUNDLE.
int describeContents()
Describe the kinds of special objects contained in this Parcelable's marshalled representation.
boolean equals(Object o)
Compares this instance with the specified object and indicates if they are equal.
String[] getAllSelectedStrings()
Returns the list of currently selected values.
String[] getChoiceEntries()
Returns the list of strings, set earlier, that will be presented as choices to the user.
String[] getChoiceValues()
Returns the list of possible string values set earlier.
String getDescription()
Returns the provided user-visible description of the entry, if any.
int getIntValue()
Returns the value of the entry as an integer when the type is TYPE_INTEGER.
String getKey()
This is the unique key for the restriction entry.
RestrictionEntry[] getRestrictions()
Returns array of possible restriction entries that this entry may contain.
boolean getSelectedState()
Returns the current selected state for an entry of type TYPE_BOOLEAN.
String getSelectedString()
Returns the currently selected string value.
String getTitle()
Returns the user-visible title for the entry, if any.
int getType()
Returns the type for this restriction.
int hashCode()
Returns an integer hash code for this object.
void setAllSelectedStrings(String[] allSelectedStrings)
Sets the current list of selected values for an entry of type TYPE_MULTI_SELECT.
void setChoiceEntries(String[] choiceEntries)
Sets a list of strings that will be presented as choices to the user.
void setChoiceEntries(Context context, int stringArrayResId)
Sets a list of strings that will be presented as choices to the user.
void setChoiceValues(String[] choiceValues)
Sets a list of string values that can be selected by the user.
void setChoiceValues(Context context, int stringArrayResId)
Sets a list of string values that can be selected by the user, similar to setChoiceValues(String[]).
void setDescription(String description)
Sets the user-visible description of the entry, as a possible sub-text for the title.
void setIntValue(int value)
Sets the integer value of the entry when the type is TYPE_INTEGER.
void setRestrictions(RestrictionEntry[] restrictions)
Sets an array of possible restriction entries, that this entry may contain.
void setSelectedState(boolean state)
Sets the current selected state for an entry of type TYPE_BOOLEAN.
void setSelectedString(String selectedString)
Sets the string value to use as the selected value for this restriction.
void setTitle(String title)
Sets the user-visible title for the entry.
void setType(int type)
Sets the type for this restriction.
String toString()
Returns a string containing a concise, human-readable description of this object.
void writeToParcel(Parcel dest, int flags)
Flatten this object in to a Parcel.
[Expand]
Inherited Methods
From class java.lang.Object
From interface android.os.Parcelable

Constants

public static final int TYPE_BOOLEAN

Added in API level 18

Restriction of type "bool". Use this for storing a boolean value, typically presented as a checkbox in the UI.

Constant Value: 1 (0x00000001)

public static final int TYPE_BUNDLE

Added in API level 23

Restriction of type "bundle". Use this for storing bundles of restrictions

Constant Value: 7 (0x00000007)

public static final int TYPE_BUNDLE_ARRAY

Added in API level 23

Restriction of type "bundle_array". Use this for storing arrays of bundles of restrictions

Constant Value: 8 (0x00000008)

public static final int TYPE_CHOICE

Added in API level 18

Restriction of type "choice". Use this for storing a string value, typically presented as a single-select list. Call setChoiceEntries(String[]) and setChoiceValues(String[]) to set the localized list entries to present to the user and the corresponding values, respectively.

Constant Value: 2 (0x00000002)

public static final int TYPE_INTEGER

Added in API level 21

Restriction of type "integer". Use this for storing an integer value. The range of values is from MIN_VALUE to MAX_VALUE.

Constant Value: 5 (0x00000005)

public static final int TYPE_MULTI_SELECT

Added in API level 18

Restriction of type "multi-select". Use this for presenting a multi-select list where more than one entry can be selected, such as for choosing specific titles to white-list. Call setChoiceEntries(String[]) and setChoiceValues(String[]) to set the localized list entries to present to the user and the corresponding values, respectively. Use getAllSelectedStrings() and setAllSelectedStrings(String[]) to manipulate the selections.

Constant Value: 4 (0x00000004)

public static final int TYPE_NULL

Added in API level 18

Hidden restriction type. Use this type for information that needs to be transferred across but shouldn't be presented to the user in the UI. Stores a single String value.

Constant Value: 0 (0x00000000)

public static final int TYPE_STRING

Added in API level 21

Restriction of type "string". Use this for storing a string value.

Constant Value: 6 (0x00000006)

Fields

public static final Creator<RestrictionEntry> CREATOR

Added in API level 18

Public Constructors

public RestrictionEntry (int type, String key)

Added in API level 21

Constructor for specifying the type and key, with no initial value;

Parameters
type the restriction type.
key the unique key for this restriction

public RestrictionEntry (String key, String selectedString)

Added in API level 18

Constructor for TYPE_CHOICE type.

Parameters
key the unique key for this restriction
selectedString the current value

public RestrictionEntry (String key, boolean selectedState)

Added in API level 18

Constructor for TYPE_BOOLEAN type.

Parameters
key the unique key for this restriction
selectedState whether this restriction is selected or not

public RestrictionEntry (String key, String[] selectedStrings)

Added in API level 18

Constructor for TYPE_MULTI_SELECT type.

Parameters
key the unique key for this restriction
selectedStrings the list of values that are currently selected

public RestrictionEntry (String key, int selectedInt)

Added in API level 21

Constructor for TYPE_INTEGER type.

Parameters
key the unique key for this restriction
selectedInt the integer value of the restriction

public RestrictionEntry (Parcel in)

Added in API level 18

Public Methods

public static RestrictionEntry createBundleArrayEntry (String key, RestrictionEntry[] restrictionEntries)

Added in API level 23

Creates an entry of type TYPE_BUNDLE_ARRAY.

Parameters
key the unique key for this restriction
restrictionEntries array of nested restriction entries. The array may only contain elements of type bundle.
Returns
  • the newly created restriction

public static RestrictionEntry createBundleEntry (String key, RestrictionEntry[] restrictionEntries)

Added in API level 23

Creates an entry of type TYPE_BUNDLE.

Parameters
key the unique key for this restriction
restrictionEntries array of nested restriction entries.
Returns
  • the newly created restriction

public int describeContents ()

Added in API level 18

Describe the kinds of special objects contained in this Parcelable's marshalled representation.

Returns
  • a bitmask indicating the set of special object types marshalled by the Parcelable.

public boolean equals (Object o)

Added in API level 18

Compares this instance with the specified object and indicates if they are equal. In order to be equal, o must represent the same object as this instance using a class-specific comparison. The general contract is that this comparison should be reflexive, symmetric, and transitive. Also, no object reference other than null is equal to null.

The default implementation returns true only if this == o. See Writing a correct equals method if you intend implementing your own equals method.

The general contract for the equals and hashCode() methods is that if equals returns true for any two objects, then hashCode() must return the same value for these objects. This means that subclasses of Object usually override either both methods or neither of them.

Parameters
o the object to compare this instance with.
Returns
  • true if the specified object is equal to this Object; false otherwise.

public String[] getAllSelectedStrings ()

Added in API level 18

Returns the list of currently selected values.

Returns

public String[] getChoiceEntries ()

Added in API level 18

Returns the list of strings, set earlier, that will be presented as choices to the user.

Returns
  • the list of choices presented to the user.

public String[] getChoiceValues ()

Added in API level 18

Returns the list of possible string values set earlier.

Returns
  • the list of possible values.

public String getDescription ()

Added in API level 18

Returns the provided user-visible description of the entry, if any.

Returns
  • the user-visible description, null if none was set earlier.

public int getIntValue ()

Added in API level 21

Returns the value of the entry as an integer when the type is TYPE_INTEGER.

Returns
  • the integer value of the entry.

public String getKey ()

Added in API level 18

This is the unique key for the restriction entry.

Returns
  • the key for the restriction.

public RestrictionEntry[] getRestrictions ()

Added in API level 23

Returns array of possible restriction entries that this entry may contain.

public boolean getSelectedState ()

Added in API level 18

Returns the current selected state for an entry of type TYPE_BOOLEAN.

Returns
  • the current selected state of the entry.

public String getSelectedString ()

Added in API level 18

Returns the currently selected string value.

Returns
  • the currently selected value, which can be null for types that aren't for holding single string values.

public String getTitle ()

Added in API level 18

Returns the user-visible title for the entry, if any.

Returns
  • the user-visible title for the entry, null if none was set earlier.

public int getType ()

Added in API level 18

Returns the type for this restriction.

Returns
  • the type for this restriction

public int hashCode ()

Added in API level 18

Returns an integer hash code for this object. By contract, any two objects for which equals(Object) returns true must return the same hash code value. This means that subclasses of Object usually override both methods or neither method.

Note that hash values must not change over time unless information used in equals comparisons also changes.

See Writing a correct hashCode method if you intend implementing your own hashCode method.

Returns
  • this object's hash code.

public void setAllSelectedStrings (String[] allSelectedStrings)

Added in API level 18

Sets the current list of selected values for an entry of type TYPE_MULTI_SELECT. These values will be persisted by the system for later use by the application.

Parameters
allSelectedStrings the current list of selected values.

public void setChoiceEntries (String[] choiceEntries)

Added in API level 18

Sets a list of strings that will be presented as choices to the user. When the user selects one or more of these choices, the corresponding value from the possible values are stored as the selected strings. The size of this array must match the size of the array set in setChoiceValues(String[]). This method is not relevant for types other than TYPE_CHOICE, and TYPE_MULTI_SELECT.

Parameters
choiceEntries the list of user-visible choices.

public void setChoiceEntries (Context context, int stringArrayResId)

Added in API level 18

Sets a list of strings that will be presented as choices to the user. This is similar to setChoiceEntries(String[]).

Parameters
context the application context, used for retrieving the resources.
stringArrayResId the resource id of a string array containing the possible entries.

public void setChoiceValues (String[] choiceValues)

Added in API level 18

Sets a list of string values that can be selected by the user. If no user-visible entries are set by a call to setChoiceEntries(String[]), these values will be the ones shown to the user. Values will be chosen from this list as the user's selection and the selected values can be retrieved by a call to getAllSelectedStrings(), or getSelectedString(), depending on whether it is a multi-select type or choice type. This method is not relevant for types other than TYPE_CHOICE, and TYPE_MULTI_SELECT.

Parameters
choiceValues an array of Strings which will be the selected values for the user's selections.

public void setChoiceValues (Context context, int stringArrayResId)

Added in API level 18

Sets a list of string values that can be selected by the user, similar to setChoiceValues(String[]).

Parameters
context the application context for retrieving the resources.
stringArrayResId the resource id for a string array containing the possible values.

public void setDescription (String description)

Added in API level 18

Sets the user-visible description of the entry, as a possible sub-text for the title. You can use this to describe the entry in more detail or to display the current state of the restriction.

Parameters
description the user-visible description string.

public void setIntValue (int value)

Added in API level 21

Sets the integer value of the entry when the type is TYPE_INTEGER.

Parameters
value the integer value to set.

public void setRestrictions (RestrictionEntry[] restrictions)

Added in API level 23

Sets an array of possible restriction entries, that this entry may contain.

This method is only relevant for types TYPE_BUNDLE and TYPE_BUNDLE_ARRAY

public void setSelectedState (boolean state)

Added in API level 18

Sets the current selected state for an entry of type TYPE_BOOLEAN. This value will be persisted by the system for later use by the application.

Parameters
state the current selected state

public void setSelectedString (String selectedString)

Added in API level 18

Sets the string value to use as the selected value for this restriction. This value will be persisted by the system for later use by the application.

Parameters
selectedString the string value to select.

public void setTitle (String title)

Added in API level 18

Sets the user-visible title for the entry.

Parameters
title the user-visible title for the entry.

public void setType (int type)

Added in API level 18

Sets the type for this restriction.

Parameters
type the type for this restriction.

public String toString ()

Added in API level 18

Returns a string containing a concise, human-readable description of this object. Subclasses are encouraged to override this method and provide an implementation that takes into account the object's type and data. The default implementation is equivalent to the following expression:

   getClass().getName() + '@' + Integer.toHexString(hashCode())

See Writing a useful toString method if you intend implementing your own toString method.

Returns
  • a printable representation of this object.

public void writeToParcel (Parcel dest, int flags)

Added in API level 18

Flatten this object in to a Parcel.

Parameters
dest The Parcel in which the object should be written.
flags Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE.