Added in [version 37.2](https://developer.android.com/topic/libraries/support-library/revisions) Summary: [Methods](https://developer.android.com/reference/android/app/admin/PolicyIdentifier#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/android/app/admin/PolicyIdentifier#inhmethods)

# PolicyIdentifier

*** ** * ** ***


`
public


class
PolicyIdentifier
`


`

extends https://developer.android.com/reference/java/lang/Object


`

`


`

|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||
| ↳ | android.app.admin.PolicyIdentifier\<T\> |

<br />

*** ** * ** ***

Represents a type safe identifier for a policy. Use it as a key for `https://developer.android.com/reference/android/app/admin/DevicePolicyManager#setPolicy(android.app.admin.PolicyIdentifier<T>,%20int,%20T)` and related APIs.

Policies should be structured as:

    {@literal @}TypePolicyDefinition
    private static final PolicyIdentifier<Type> POLICY_NAME =
        new SimplePolicyIdentifier<>("POLICY_NAME");

Currently policy definitions are restricted to the `android.app.admin.policy` namespace.
This restriction might be lifted in the future.

## Summary

| ### Public methods ||
|---|---|
| ` static <U> https://developer.android.com/reference/android/app/admin/PolicyIdentifier<U>` | ` https://developer.android.com/reference/android/app/admin/PolicyIdentifier#createForTesting(java.lang.String)(https://developer.android.com/reference/java/lang/String id) ` *This method was deprecated in API level 37.2. Use `https://developer.android.com/` instead.* |

### Inherited methods

From class `

https://developer.android.com/reference/java/lang/Object

` `


https://developer.android.com/reference/java/lang/Object` `
https://developer.android.com/reference/java/lang/Object#clone()()
`

Creates and returns a copy of this object.


`


boolean` `
https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object obj)
`

Indicates whether some other object is "equal to" this one.


`


void` `
https://developer.android.com/reference/java/lang/Object#finalize()()
`

Called by the garbage collector on an object when garbage collection
determines that there are no more references to the object.


`


final

https://developer.android.com/reference/java/lang/Class<?>` `
https://developer.android.com/reference/java/lang/Object#getClass()()
`

Returns the runtime class of this `Object`.


`


int` `
https://developer.android.com/reference/java/lang/Object#hashCode()()
`

Returns a hash code value for the object.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#notify()()
`

Wakes up a single thread that is waiting on this object's
monitor.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#notifyAll()()
`

Wakes up all threads that are waiting on this object's monitor.


`


https://developer.android.com/reference/java/lang/String` `
https://developer.android.com/reference/java/lang/Object#toString()()
`

Returns a string representation of the object.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#wait(long,%20int)(long timeoutMillis, int nanos)
`

Causes the current thread to wait until it is awakened, typically
by being *notified* or *interrupted*, or until a
certain amount of real time has elapsed.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#wait(long)(long timeoutMillis)
`

Causes the current thread to wait until it is awakened, typically
by being *notified* or *interrupted*, or until a
certain amount of real time has elapsed.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#wait()()
`

Causes the current thread to wait until it is awakened, typically
by being *notified* or *interrupted*.


## Public methods

### createForTesting

Added in [version 37.2](https://developer.android.com/topic/libraries/support-library/revisions)   
Deprecated in [API level
37.2](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static PolicyIdentifier<U> createForTesting (String id)
```


**This method was deprecated
in API level 37.2.**   

Use `https://developer.android.com/` instead.

Create an instance of PolicyIdentifier for testing purposes. This must NOT be used in any
real production code.

<br />

| Parameters ||
|---|---|
| `id` | `String`: This value cannot be `null`. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/app/admin/PolicyIdentifier<U>` | This value cannot be `null`. <br /> |