Skip to content

Most visited

Recently visited

navigation

MediaCodec.CryptoException

public static final class MediaCodec.CryptoException
extends RuntimeException

java.lang.Object
   ↳ java.lang.Throwable
     ↳ java.lang.Exception
       ↳ java.lang.RuntimeException
         ↳ android.media.MediaCodec.CryptoException


Thrown when a crypto error occurs while queueing a secure input buffer.

Summary

Constants

int ERROR_INSUFFICIENT_OUTPUT_PROTECTION

This indicates that the output protection levels supported by the device are not sufficient to meet the requirements set by the content owner in the license policy.

int ERROR_KEY_EXPIRED

This indicates that the key used for decryption is no longer valid due to license term expiration.

int ERROR_NO_KEY

This indicates that the requested key was not found when trying to perform a decrypt operation.

int ERROR_RESOURCE_BUSY

This indicates that a required crypto resource was not able to be allocated while attempting the requested operation.

int ERROR_SESSION_NOT_OPENED

This indicates that decryption was attempted on a session that is not opened, which could be due to a failure to open the session, closing the session prematurely, or the session being reclaimed by the resource manager.

int ERROR_UNSUPPORTED_OPERATION

This indicates that an operation was attempted that could not be supported by the crypto system of the device in its current configuration.

Public constructors

MediaCodec.CryptoException(int errorCode, String detailMessage)

Public methods

int getErrorCode()

Retrieve the error code associated with a CryptoException

Inherited methods

From class java.lang.Throwable
From class java.lang.Object

Constants

ERROR_INSUFFICIENT_OUTPUT_PROTECTION

Added in API level 21
int ERROR_INSUFFICIENT_OUTPUT_PROTECTION

This indicates that the output protection levels supported by the device are not sufficient to meet the requirements set by the content owner in the license policy.

Constant Value: 4 (0x00000004)

ERROR_KEY_EXPIRED

Added in API level 19
int ERROR_KEY_EXPIRED

This indicates that the key used for decryption is no longer valid due to license term expiration. The operation can be retried after updating the expired keys.

Constant Value: 2 (0x00000002)

ERROR_NO_KEY

Added in API level 19
int ERROR_NO_KEY

This indicates that the requested key was not found when trying to perform a decrypt operation. The operation can be retried after adding the correct decryption key.

Constant Value: 1 (0x00000001)

ERROR_RESOURCE_BUSY

Added in API level 19
int ERROR_RESOURCE_BUSY

This indicates that a required crypto resource was not able to be allocated while attempting the requested operation. The operation can be retried if the app is able to release resources.

Constant Value: 3 (0x00000003)

ERROR_SESSION_NOT_OPENED

Added in API level 23
int ERROR_SESSION_NOT_OPENED

This indicates that decryption was attempted on a session that is not opened, which could be due to a failure to open the session, closing the session prematurely, or the session being reclaimed by the resource manager.

Constant Value: 5 (0x00000005)

ERROR_UNSUPPORTED_OPERATION

Added in API level 24
int ERROR_UNSUPPORTED_OPERATION

This indicates that an operation was attempted that could not be supported by the crypto system of the device in its current configuration. It may occur when the license policy requires device security features that aren't supported by the device, or due to an internal error in the crypto system that prevents the specified security policy from being met.

Constant Value: 6 (0x00000006)

Public constructors

MediaCodec.CryptoException

Added in API level 16
MediaCodec.CryptoException (int errorCode, 
                String detailMessage)

Parameters
errorCode int
detailMessage String

Public methods

getErrorCode

Added in API level 16
int getErrorCode ()

Retrieve the error code associated with a CryptoException

Returns
int
This site uses cookies to store your preferences for site-specific language and display options.

Hooray!

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a one-minute survey?
Help us improve Android tools and documentation.