Added in [API level 11](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)   
Deprecated in [API level 30](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels) Summary: [Ctors](https://developer.android.com/reference/android/drm/DrmInfo#pubctors) \| [Methods](https://developer.android.com/reference/android/drm/DrmInfo#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/android/drm/DrmInfo#inhmethods)

# DrmInfo

*** ** * ** ***

` public class DrmInfo `   
` extends https://developer.android.com/reference/java/lang/Object ` ` `

|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||
| ↳ | android.drm.DrmInfo |

<br />

*** ** * ** ***

<br />

**This class was deprecated in API level 30.**   

Please use `https://developer.android.com/reference/android/media/MediaDrm`

An entity class that describes the information required to send transactions between a device and an online DRM server. The DRM framework achieves server registration, license acquisition, and any other server-related transactions by passing an instance of this class to `https://developer.android.com/reference/android/drm/DrmManagerClient#processDrmInfo(android.drm.DrmInfo)`.

The caller can retrieve the `https://developer.android.com/reference/android/drm/DrmInfo` instance by passing a `https://developer.android.com/reference/android/drm/DrmInfoRequest` instance to `https://developer.android.com/reference/android/drm/DrmManagerClient#acquireDrmInfo(android.drm.DrmInfoRequest)`.

## Summary

| ### Public constructors ||
|---|---|
| ` https://developer.android.com/reference/android/drm/DrmInfo#DrmInfo(int,%20byte[],%20java.lang.String)(int infoType, byte[] data, https://developer.android.com/reference/java/lang/String mimeType) ` Creates a `DrmInfo` object with the given parameters. |
| ` https://developer.android.com/reference/android/drm/DrmInfo#DrmInfo(int,%20java.lang.String,%20java.lang.String)(int infoType, https://developer.android.com/reference/java/lang/String path, https://developer.android.com/reference/java/lang/String mimeType) ` Creates a `DrmInfo` object with the given parameters. |

| ### Public methods ||
|---|---|
| ` https://developer.android.com/reference/java/lang/Object` | ` https://developer.android.com/reference/android/drm/DrmInfo#get(java.lang.String)(https://developer.android.com/reference/java/lang/String key) ` Retrieves the value of a given key. |
| ` byte[]` | ` https://developer.android.com/reference/android/drm/DrmInfo#getData()() ` Retrieves the trigger data associated with this object. |
| ` int` | ` https://developer.android.com/reference/android/drm/DrmInfo#getInfoType()() ` Retrieves the information type associated with this object. |
| ` https://developer.android.com/reference/java/lang/String` | ` https://developer.android.com/reference/android/drm/DrmInfo#getMimeType()() ` Retrieves the MIME type associated with this object. |
| ` https://developer.android.com/reference/java/util/Iterator<https://developer.android.com/reference/java/lang/Object>` | ` https://developer.android.com/reference/android/drm/DrmInfo#iterator()() ` Retrieves an iterator object that you can use to iterate over the values associated with this `DrmInfo` object. |
| ` https://developer.android.com/reference/java/util/Iterator<https://developer.android.com/reference/java/lang/String>` | ` https://developer.android.com/reference/android/drm/DrmInfo#keyIterator()() ` Retrieves an iterator object that you can use to iterate over the keys associated with this `DrmInfo` object. |
| ` void` | ` https://developer.android.com/reference/android/drm/DrmInfo#put(java.lang.String,%20java.lang.Object)(https://developer.android.com/reference/java/lang/String key, https://developer.android.com/reference/java/lang/Object value) ` Adds optional information as key-value pairs to this object. |

### 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 constructors

### DrmInfo

Added in [API level 11](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public DrmInfo (int infoType, 
                byte[] data, 
                String mimeType)
```

Creates a `DrmInfo` object with the given parameters.

<br />

| Parameters ||
|---|---|
| `infoType` | `int`: The type of information. <br /> |
| `data` | `byte`: The trigger data. <br /> |
| `mimeType` | `String`: The MIME type. <br /> |

### DrmInfo

Added in [API level 11](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public DrmInfo (int infoType, 
                String path, 
                String mimeType)
```

Creates a `DrmInfo` object with the given parameters.

<br />

| Parameters ||
|---|---|
| `infoType` | `int`: The type of information. <br /> |
| `path` | `String`: The trigger data. <br /> |
| `mimeType` | `String`: The MIME type. <br /> |

## Public methods

### get

Added in [API level 11](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public Object get (String key)
```

Retrieves the value of a given key.

<br />

| Parameters ||
|---|---|
| `key` | `String`: The key whose value is being retrieved. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/Object` | The value of the key being retrieved. Returns null if the key cannot be found. <br /> |

### getData

Added in [API level 11](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public byte[] getData ()
```

Retrieves the trigger data associated with this object.

<br />

| Returns ||
|---|---|
| `byte[]` | The trigger data. <br /> |

### getInfoType

Added in [API level 11](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getInfoType ()
```

Retrieves the information type associated with this object.

<br />

| Returns ||
|---|---|
| `int` | The information type. <br /> |

### getMimeType

Added in [API level 11](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public String getMimeType ()
```

Retrieves the MIME type associated with this object.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/String` | The MIME type. <br /> |

### iterator

Added in [API level 11](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public Iterator<Object> iterator ()
```

Retrieves an iterator object that you can use to iterate over the values associated with this `DrmInfo` object.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/util/Iterator<https://developer.android.com/reference/java/lang/Object>` | The iterator object. <br /> |

### keyIterator

Added in [API level 11](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public Iterator<String> keyIterator ()
```

Retrieves an iterator object that you can use to iterate over the keys associated with this `DrmInfo` object.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/util/Iterator<https://developer.android.com/reference/java/lang/String>` | The iterator object. <br /> |

### put

Added in [API level 11](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void put (String key, 
                Object value)
```

Adds optional information as key-value pairs to this object. To add a custom object to the `DrmInfo` object, you must override the `https://developer.android.com/reference/java/lang/Object#toString()` implementation.

<br />

| Parameters ||
|---|---|
| `key` | `String`: Key to add. <br /> |
| `value` | `Object`: Value to add. <br /> |