Back to Exoplayer

DummyExoMediaDrm (ExoPlayer library)

docs/doc/reference/com/google/android/exoplayer2/drm/DummyExoMediaDrm.html

latest21.5 KB
Original Source

Package com.google.android.exoplayer2.drm

Class DummyExoMediaDrm

  • java.lang.Object

    • com.google.android.exoplayer2.drm.DummyExoMediaDrm
  • All Implemented Interfaces:ExoMediaDrm


@RequiresApi(18)[@Deprecated](https://developer.android.com/reference/java/lang/Deprecated.html "class or interface in java.lang")public final classDummyExoMediaDrmextends[Object](https://developer.android.com/reference/java/lang/Object.html "class or interface in java.lang")implements[ExoMediaDrm](ExoMediaDrm.html "interface in com.google.android.exoplayer2.drm")

Deprecated. com.google.android.exoplayer2 is deprecated. Please migrate to androidx.media3 (which contains the same ExoPlayer code). See the migration guide for more details, including a script to help with the migration.

An ExoMediaDrm that does not support any protection schemes.

Nested Class Summary

- 

Nested classes/interfaces inherited from interface com.google.android.exoplayer2.drm.ExoMediaDrm

ExoMediaDrm.AppManagedProvider, ExoMediaDrm.KeyRequest, ExoMediaDrm.KeyStatus, ExoMediaDrm.OnEventListener, ExoMediaDrm.OnExpirationUpdateListener, ExoMediaDrm.OnKeyStatusChangeListener, ExoMediaDrm.Provider, ExoMediaDrm.ProvisionRequest

Field Summary

- 

Fields inherited from interface com.google.android.exoplayer2.drm.ExoMediaDrm

EVENT_KEY_EXPIRED, EVENT_KEY_REQUIRED, EVENT_PROVISION_REQUIRED, KEY_TYPE_OFFLINE, KEY_TYPE_RELEASE, KEY_TYPE_STREAMING

Constructor Summary

Constructors | Constructor | Description | | --- | --- | | DummyExoMediaDrm() | Deprecated. |

Method Summary

All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods | Modifier and Type | Method | Description | | --- | --- | --- | | void | acquire() | Deprecated.

Increments the reference count. | | void | closeSession​(byte[] sessionId) | Deprecated.

Closes a DRM session. | | CryptoConfig | createCryptoConfig​(byte[] sessionId) | Deprecated.

Creates a CryptoConfig that can be passed to a compatible decoder to allow decryption of protected content using the specified session. | | @com.google.android.exoplayer2.C.CryptoType int | getCryptoType() | Deprecated.

Returns the type of CryptoConfig instances returned by ExoMediaDrm.createCryptoConfig(byte[]). | | static DummyExoMediaDrm | getInstance() | Deprecated.

Returns a new instance. | | ExoMediaDrm.KeyRequest | getKeyRequest​(byte[] scope, List<DrmInitData.SchemeData> schemeDatas, int keyType, HashMap<String,​String> optionalParameters) | Deprecated.

Generates a key request. | | PersistableBundle | getMetrics() | Deprecated.

Returns metrics data for this ExoMediaDrm instance, or null if metrics are unavailable. | | byte[] | getPropertyByteArray​(String propertyName) | Deprecated.

Returns the value of a byte array property. | | String | getPropertyString​(String propertyName) | Deprecated.

Returns the value of a string property. | | ExoMediaDrm.ProvisionRequest | getProvisionRequest() | Deprecated.

Generates a provisioning request. | | byte[] | openSession() | Deprecated.

Opens a new DRM session. | | byte[] | provideKeyResponse​(byte[] scope, byte[] response) | Deprecated.

Provides a key response for the last request to be generated using ExoMediaDrm.getKeyRequest(byte[], java.util.List<com.google.android.exoplayer2.drm.DrmInitData.SchemeData>, int, java.util.HashMap<java.lang.String, java.lang.String>). | | void | provideProvisionResponse​(byte[] response) | Deprecated.

Provides a provisioning response for the last request to be generated using ExoMediaDrm.getProvisionRequest(). | | Map<String,​String> | queryKeyStatus​(byte[] sessionId) | Deprecated.

Returns the key status for a given session, as {name, value} pairs. | | void | release() | Deprecated.

Decrements the reference count. | | boolean | requiresSecureDecoder​(byte[] sessionId, String mimeType) | Deprecated.

Returns whether the given session requires use of a secure decoder for the given MIME type. | | void | restoreKeys​(byte[] sessionId, byte[] keySetId) | Deprecated.

Restores persisted offline keys into a session. | | void | setOnEventListener​(ExoMediaDrm.OnEventListener listener) | Deprecated.

Sets the listener for DRM events. | | void | setOnExpirationUpdateListener​(ExoMediaDrm.OnExpirationUpdateListener listener) | Deprecated.

Sets the listener for session expiration events. | | void | setOnKeyStatusChangeListener​(ExoMediaDrm.OnKeyStatusChangeListener listener) | Deprecated.

Sets the listener for key status change events. | | void | setPropertyByteArray​(String propertyName, byte[] value) | Deprecated.

Sets the value of a byte array property. | | void | setPropertyString​(String propertyName, String value) | Deprecated.

Sets the value of a string property. |

- 

Methods inherited from class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

- 

Methods inherited from interface com.google.android.exoplayer2.drm.ExoMediaDrm

setPlayerIdForSession

Constructor Detail

- 

DummyExoMediaDrm

public DummyExoMediaDrm()

Deprecated.

Method Detail

- 

getInstance

public static[DummyExoMediaDrm](DummyExoMediaDrm.html "class in com.google.android.exoplayer2.drm")getInstance()

Deprecated.

Returns a new instance.

- 

setOnEventListener

public void setOnEventListener​(@Nullable[ExoMediaDrm.OnEventListener](ExoMediaDrm.OnEventListener.html "interface in com.google.android.exoplayer2.drm")listener)

Deprecated.

Description copied from interface: ExoMediaDrm

Sets the listener for DRM events.

This is an optional method, and some implementations may only support it on certain Android API levels.

Specified by:setOnEventListener in interface ExoMediaDrmParameters:listener - The listener to receive events, or null to stop receiving events.See Also:MediaDrm.setOnEventListener(MediaDrm.OnEventListener)

- 

setOnKeyStatusChangeListener

public void setOnKeyStatusChangeListener​(@Nullable[ExoMediaDrm.OnKeyStatusChangeListener](ExoMediaDrm.OnKeyStatusChangeListener.html "interface in com.google.android.exoplayer2.drm")listener)

Deprecated.

Description copied from interface: ExoMediaDrm

Sets the listener for key status change events.

This is an optional method, and some implementations may only support it on certain Android API levels.

Specified by:setOnKeyStatusChangeListener in interface ExoMediaDrmParameters:listener - The listener to receive events, or null to stop receiving events.See Also:MediaDrm.setOnKeyStatusChangeListener(MediaDrm.OnKeyStatusChangeListener, Handler)

- 

setOnExpirationUpdateListener

public void setOnExpirationUpdateListener​(@Nullable[ExoMediaDrm.OnExpirationUpdateListener](ExoMediaDrm.OnExpirationUpdateListener.html "interface in com.google.android.exoplayer2.drm")listener)

Deprecated.

Description copied from interface: ExoMediaDrm

Sets the listener for session expiration events.

This is an optional method, and some implementations may only support it on certain Android API levels.

Specified by:setOnExpirationUpdateListener in interface ExoMediaDrmParameters:listener - The listener to receive events, or null to stop receiving events.See Also:MediaDrm.setOnExpirationUpdateListener(MediaDrm.OnExpirationUpdateListener, Handler)

- 

openSession

public byte[] openSession()
                   throws[MediaDrmException](https://developer.android.com/reference/android/media/MediaDrmException.html "class or interface in android.media")

Deprecated.

Description copied from interface: ExoMediaDrm

Opens a new DRM session. A session ID is returned. Specified by:openSession in interface ExoMediaDrmReturns:The session ID.Throws:NotProvisionedException - If provisioning is needed.ResourceBusyException - If required resources are in use.MediaDrmException - If the session could not be opened.

- 

closeSession

public void closeSession​(byte[] sessionId)

Deprecated.

Description copied from interface: ExoMediaDrm

Closes a DRM session. Specified by:closeSession in interface ExoMediaDrmParameters:sessionId - The ID of the session to close.

- 

getKeyRequest

public[ExoMediaDrm.KeyRequest](ExoMediaDrm.KeyRequest.html "class in com.google.android.exoplayer2.drm")getKeyRequest​(byte[] scope,
                                            @Nullable[List](https://developer.android.com/reference/java/util/List.html "class or interface in java.util")<[DrmInitData.SchemeData](DrmInitData.SchemeData.html "class in com.google.android.exoplayer2.drm")> schemeDatas,
                                            int keyType,
                                            @Nullable[HashMap](https://developer.android.com/reference/java/util/HashMap.html "class or interface in java.util")<[String](https://developer.android.com/reference/java/lang/String.html?is-external=true "class or interface in java.lang"),​[String](https://developer.android.com/reference/java/lang/String.html?is-external=true "class or interface in java.lang")> optionalParameters)

Deprecated.

Description copied from interface: ExoMediaDrm

Generates a key request. Specified by:getKeyRequest in interface ExoMediaDrmParameters:scope - If keyType is ExoMediaDrm.KEY_TYPE_STREAMING or ExoMediaDrm.KEY_TYPE_OFFLINE, the ID of the session that the keys will be provided to. If keyType is ExoMediaDrm.KEY_TYPE_RELEASE, the keySetId of the keys to release.schemeDatas - If key type is ExoMediaDrm.KEY_TYPE_STREAMING or ExoMediaDrm.KEY_TYPE_OFFLINE, a list of DrmInitData.SchemeData instances extracted from the media. Null otherwise.keyType - The type of the request. Either ExoMediaDrm.KEY_TYPE_STREAMING to acquire keys for streaming, ExoMediaDrm.KEY_TYPE_OFFLINE to acquire keys for offline usage, or ExoMediaDrm.KEY_TYPE_RELEASE to release acquired keys. Releasing keys invalidates them for all sessions.optionalParameters - Are included in the key request message to allow a client application to provide additional message parameters to the server. This may be null if no additional parameters are to be sent.Returns:The generated key request.See Also:MediaDrm.getKeyRequest(byte[], byte[], String, int, HashMap)

- 

provideKeyResponse

@Nullable
public byte[] provideKeyResponse​(byte[] scope,
                                 byte[] response)

Deprecated.

Description copied from interface: ExoMediaDrm

Provides a key response for the last request to be generated using ExoMediaDrm.getKeyRequest(byte[], java.util.List<com.google.android.exoplayer2.drm.DrmInitData.SchemeData>, int, java.util.HashMap<java.lang.String, java.lang.String>). Specified by:provideKeyResponse in interface ExoMediaDrmParameters:scope - If the request had type ExoMediaDrm.KEY_TYPE_STREAMING or ExoMediaDrm.KEY_TYPE_OFFLINE, the ID of the session to provide the keys to. If keyType is ExoMediaDrm.KEY_TYPE_RELEASE, the keySetId of the keys being released.response - The response data from the server.Returns:If the request had type ExoMediaDrm.KEY_TYPE_OFFLINE, the keySetId for the offline keys. An empty byte array or null may be returned for other cases.

- 

getProvisionRequest

public[ExoMediaDrm.ProvisionRequest](ExoMediaDrm.ProvisionRequest.html "class in com.google.android.exoplayer2.drm")getProvisionRequest()

Deprecated.

Description copied from interface: ExoMediaDrm

Generates a provisioning request. Specified by:getProvisionRequest in interface ExoMediaDrmReturns:The generated provisioning request.

- 

provideProvisionResponse

public void provideProvisionResponse​(byte[] response)

Deprecated.

Description copied from interface: ExoMediaDrm

Provides a provisioning response for the last request to be generated using ExoMediaDrm.getProvisionRequest(). Specified by:provideProvisionResponse in interface ExoMediaDrmParameters:response - The response data from the server.

- 

queryKeyStatus

public[Map](https://developer.android.com/reference/java/util/Map.html "class or interface in java.util")<[String](https://developer.android.com/reference/java/lang/String.html?is-external=true "class or interface in java.lang"),​[String](https://developer.android.com/reference/java/lang/String.html?is-external=true "class or interface in java.lang")> queryKeyStatus​(byte[] sessionId)

Deprecated.

Description copied from interface: ExoMediaDrm

Returns the key status for a given session, as {name, value} pairs. Since DRM license policies vary by vendor, the returned entries depend on the DRM plugin being used. Refer to your DRM provider's documentation for more information. Specified by:queryKeyStatus in interface ExoMediaDrmParameters:sessionId - The ID of the session being queried.Returns:The key status for the session.

- 

requiresSecureDecoder

public boolean requiresSecureDecoder​(byte[] sessionId,[String](https://developer.android.com/reference/java/lang/String.html "class or interface in java.lang")mimeType)

Deprecated.

Description copied from interface: ExoMediaDrm

Returns whether the given session requires use of a secure decoder for the given MIME type. Assumes a license policy that requires the highest level of security supported by the session. Specified by:requiresSecureDecoder in interface ExoMediaDrmParameters:sessionId - The ID of the session.mimeType - The content MIME type to query.

- 

acquire

public void acquire()

Deprecated.

Description copied from interface: ExoMediaDrm

Increments the reference count. When the caller no longer needs to use the instance, it must call ExoMediaDrm.release() to decrement the reference count.

A new instance will have an initial reference count of 1, and therefore it is not normally necessary for application code to call this method.

Specified by:acquire in interface ExoMediaDrm

- 

release

public void release()

Deprecated.

Description copied from interface: ExoMediaDrm

Decrements the reference count. If the reference count drops to 0 underlying resources are released, and the instance cannot be re-used. Specified by:release in interface ExoMediaDrm

- 

restoreKeys

public void restoreKeys​(byte[] sessionId,
                        byte[] keySetId)

Deprecated.

Description copied from interface: ExoMediaDrm

Restores persisted offline keys into a session. Specified by:restoreKeys in interface ExoMediaDrmParameters:sessionId - The ID of the session into which the keys will be restored.keySetId - The keySetId of the keys to restore, as provided by the call to ExoMediaDrm.provideKeyResponse(byte[], byte[]) that persisted them.

- 

getMetrics

@Nullable
public[PersistableBundle](https://developer.android.com/reference/android/os/PersistableBundle.html "class or interface in android.os")getMetrics()

Deprecated.

Description copied from interface: ExoMediaDrm

Returns metrics data for this ExoMediaDrm instance, or null if metrics are unavailable. Specified by:getMetrics in interface ExoMediaDrm

- 

getPropertyString

public[String](https://developer.android.com/reference/java/lang/String.html "class or interface in java.lang")getPropertyString​([String](https://developer.android.com/reference/java/lang/String.html?is-external=true "class or interface in java.lang")propertyName)

Deprecated.

Description copied from interface: ExoMediaDrm

Returns the value of a string property. For standard property names, see MediaDrm.getPropertyString(java.lang.String). Specified by:getPropertyString in interface ExoMediaDrmParameters:propertyName - The property name.Returns:The property value.

- 

getPropertyByteArray

public byte[] getPropertyByteArray​([String](https://developer.android.com/reference/java/lang/String.html "class or interface in java.lang")propertyName)

Deprecated.

Description copied from interface: ExoMediaDrm

Returns the value of a byte array property. For standard property names, see MediaDrm.getPropertyByteArray(java.lang.String). Specified by:getPropertyByteArray in interface ExoMediaDrmParameters:propertyName - The property name.Returns:The property value.

- 

setPropertyString

public void setPropertyString​([String](https://developer.android.com/reference/java/lang/String.html "class or interface in java.lang")propertyName,[String](https://developer.android.com/reference/java/lang/String.html "class or interface in java.lang")value)

Deprecated.

Description copied from interface: ExoMediaDrm

Sets the value of a string property. Specified by:setPropertyString in interface ExoMediaDrmParameters:propertyName - The property name.value - The value.

- 

setPropertyByteArray

public void setPropertyByteArray​([String](https://developer.android.com/reference/java/lang/String.html "class or interface in java.lang")propertyName,
                                 byte[] value)

Deprecated.

Description copied from interface: ExoMediaDrm

Sets the value of a byte array property. Specified by:setPropertyByteArray in interface ExoMediaDrmParameters:propertyName - The property name.value - The value.

- 

createCryptoConfig

public[CryptoConfig](../decoder/CryptoConfig.html "interface in com.google.android.exoplayer2.decoder")createCryptoConfig​(byte[] sessionId)

Deprecated.

Description copied from interface: ExoMediaDrm

Creates a CryptoConfig that can be passed to a compatible decoder to allow decryption of protected content using the specified session. Specified by:createCryptoConfig in interface ExoMediaDrmParameters:sessionId - The ID of the session.Returns:A CryptoConfig for the given session.

- 

getCryptoType

public @com.google.android.exoplayer2.C.CryptoType int getCryptoType()

Deprecated.

Description copied from interface: ExoMediaDrm

Returns the type of CryptoConfig instances returned by ExoMediaDrm.createCryptoConfig(byte[]). Specified by:getCryptoType in interface ExoMediaDrm