Most visited

Recently visited

Added in API level 11

DrmManagerClient

public class DrmManagerClient
extends Object implements AutoCloseable

java.lang.Object
   ↳ android.drm.DrmManagerClient


DRM框架的主要编程接口。 应用程序必须实例化此类以通过DRM框架访问DRM代理。

Summary

Nested classes

interface DrmManagerClient.OnErrorListener

接收有关DRM框架错误信息的回调的接口定义。

interface DrmManagerClient.OnEventListener

接收有关DRM处理事件信息的回调的接口定义。

interface DrmManagerClient.OnInfoListener

在注册和权限获取期间接收状态消息和警告的回调的接口定义。

Constants

int ERROR_NONE

表示请求已成功或未发生错误。

int ERROR_UNKNOWN

表示发生了错误,原因未知。

Public constructors

DrmManagerClient(Context context)

创建一个 DrmManagerClient

Public methods

DrmInfo acquireDrmInfo(DrmInfoRequest drmInfoRequest)

检索注册,取消注册或获取权限的信息。

int acquireRights(DrmInfoRequest drmInfoRequest)

处理给定的 DrmInfoRequest并异步返回权限信息。

boolean canHandle(String path, String mimeType)

检查是否可以处理给定的MIME类型或路径。

boolean canHandle(Uri uri, String mimeType)

检查是否可以处理给定的MIME类型或URI。

int checkRightsStatus(String path)

检查给定内容是否具有有效权限。

int checkRightsStatus(Uri uri)

检查给定内容是否具有有效权限。

int checkRightsStatus(String path, int action)

检查给定的受权限保护的内容是否具有指定的 DrmStore.Action有效权限。

int checkRightsStatus(Uri uri, int action)

检查给定的受版权保护的内容是否具有指定的 DrmStore.Action有效权利。

void close()

释放与当前DrmManagerClient会话关联的资源。

DrmConvertedStatus closeConvertSession(int convertId)

通知DRM插件(代理)没有更多数据要转换或发生错误。

DrmConvertedStatus convertData(int convertId, byte[] inputData)

转换作为受权限保护文件一部分的输入数据(内容)。

String[] getAvailableDrmEngines()

检索有关在DRM框架中注册的所有DRM插件(代理)的信息。

ContentValues getConstraints(String path, int action)

检索受权限保护的内容的约束信息。

ContentValues getConstraints(Uri uri, int action)

检索受权限保护的内容的约束信息。

int getDrmObjectType(Uri uri, String mimeType)

使用指定的URI或MIME类型检索受权限保护的对象的类型(例如,内容对象,权限对象等)。

int getDrmObjectType(String path, String mimeType)

使用指定的路径或MIME类型检索受权限保护的对象的类型(例如,内容对象,权限对象等)。

ContentValues getMetadata(String path)

检索受权限保护的内容的元数据信息。

ContentValues getMetadata(Uri uri)

检索受权限保护的内容的元数据信息。

String getOriginalMimeType(Uri uri)

检索嵌入在原始内容中的MIME类型。

String getOriginalMimeType(String path)

检索嵌入在原始内容中的MIME类型。

int openConvertSession(String mimeType)

启动新的转换会话。

int processDrmInfo(DrmInfo drmInfo)

根据信息类型处理给定的DRM信息。

void release()

此方法在API级别24中已被弃用。替换为close()

int removeAllRights()

删除与DRM框架相关的每个DRM插件(代理)的所有权限信息。

int removeRights(String path)

删除与给定的受权限保护的内容相关的权利。

int removeRights(Uri uri)

删除与给定的受权限保护的内容相关的权利。

int saveRights(DrmRights drmRights, String rightsPath, String contentPath)

将权限保存到指定路径并将该路径与内容路径相关联。

void setOnErrorListener(DrmManagerClient.OnErrorListener errorListener)

注册一个 DrmManagerClient.OnErrorListener回调,当DRM框架发送错误信息时会调用该回调。

void setOnEventListener(DrmManagerClient.OnEventListener eventListener)

注册 DrmManagerClient.OnEventListener回调,当DRM框架发送有关DRM处理的信息时调用该回调。

void setOnInfoListener(DrmManagerClient.OnInfoListener infoListener)

注册一个 DrmManagerClient.OnInfoListener回调,当DRM框架在注册或权限获取期间发送状态或警告信息时会调用该回调。

Protected methods

void finalize()

当垃圾收集确定没有更多对该对象的引用时,由对象上的垃圾回收器调用。

Inherited methods

From class java.lang.Object
From interface java.lang.AutoCloseable

Constants

ERROR_NONE

Added in API level 11
int ERROR_NONE

表示请求已成功或未发生错误。

常量值:0(0x00000000)

ERROR_UNKNOWN

Added in API level 11
int ERROR_UNKNOWN

表示发生了错误,原因未知。

常量值:-2000(0xfffff830)

Public constructors

DrmManagerClient

Added in API level 11
DrmManagerClient (Context context)

创建一个 DrmManagerClient

Parameters
context Context: Context of the caller.

Public methods

acquireDrmInfo

Added in API level 11
DrmInfo acquireDrmInfo (DrmInfoRequest drmInfoRequest)

检索注册,取消注册或获取权限的信息。

Parameters
drmInfoRequest DrmInfoRequest: The DrmInfoRequest that specifies the type of DRM information being retrieved.
Returns
DrmInfo A DrmInfo instance.

acquireRights

Added in API level 11
int acquireRights (DrmInfoRequest drmInfoRequest)

处理给定的 DrmInfoRequest并异步返回权限信息。

这是一个实用程序方法,由acquireDrmInfo()processDrmInfo()方法调用组成。 只有在选定的DRM插件(代理程序)支持这一系列调用时,才能使用此实用程序方法。 某些DRM代理(如OMA)不支持此实用程序方法,在这种情况下,应用程序必须分别调用acquireDrmInfo()processDrmInfo()

Parameters
drmInfoRequest DrmInfoRequest: The DrmInfoRequest used to acquire the rights.
Returns
int ERROR_NONE for success; ERROR_UNKNOWN for failure.

canHandle

Added in API level 11
boolean canHandle (String path, 
                String mimeType)

检查是否可以处理给定的MIME类型或路径。

Parameters
path String: Path of the content to be handled.
mimeType String: MIME type of the object to be handled.
Returns
boolean True if the given MIME type or path can be handled; false if they cannot be handled.

canHandle

Added in API level 11
boolean canHandle (Uri uri, 
                String mimeType)

检查是否可以处理给定的MIME类型或URI。

Parameters
uri Uri: URI for the content to be handled.
mimeType String: MIME type of the object to be handled
Returns
boolean True if the given MIME type or URI can be handled; false if they cannot be handled.

checkRightsStatus

Added in API level 11
int checkRightsStatus (String path)

检查给定内容是否具有有效权限。

Parameters
path String: Path to the rights-protected content.
Returns
int An int representing the DrmStore.RightsStatus of the content.

checkRightsStatus

Added in API level 11
int checkRightsStatus (Uri uri)

检查给定内容是否具有有效权限。

Parameters
uri Uri: URI of the rights-protected content.
Returns
int An int representing the DrmStore.RightsStatus of the content.

checkRightsStatus

Added in API level 11
int checkRightsStatus (String path, 
                int action)

检查给定的受权限保护的内容是否具有指定的 DrmStore.Action有效权限。

Parameters
path String: Path to the rights-protected content.
action int: The DrmStore.Action to perform.
Returns
int An int representing the DrmStore.RightsStatus of the content.

checkRightsStatus

Added in API level 11
int checkRightsStatus (Uri uri, 
                int action)

检查给定的受权限保护的内容是否具有指定的 DrmStore.Action有效权限。

Parameters
uri Uri: URI for the rights-protected content.
action int: The DrmStore.Action to perform.
Returns
int An int representing the DrmStore.RightsStatus of the content.

close

Added in API level 24
void close ()

释放与当前DrmManagerClient会话关联的资源。 在应用程序中不再需要DrmManagerClient对象时调用此方法被认为是一种好的做法。 调用此方法后, DrmManagerClient不再可用,因为它已经丢失了所需的全部资源。

closeConvertSession

Added in API level 11
DrmConvertedStatus closeConvertSession (int convertId)

通知DRM插件(代理)没有更多数据要转换或发生错误。 在成功转换数据后,DRM代理将提供一个偏移值,指示应该添加标题和主体签名的位置。 附加签名对保护转换文件的完整性是必要的。

Parameters
convertId int: Handle for the conversion session.
Returns
DrmConvertedStatus A DrmConvertedStatus object that contains the status of the data conversion, the converted data, and the offset for the header and body signature.

convertData

Added in API level 11
DrmConvertedStatus convertData (int convertId, 
                byte[] inputData)

转换作为受权限保护文件一部分的输入数据(内容)。 转换后的数据和状态将返回到DrmConvertedStatus对象中。 每次应用程序接收到新的数据块时都应调用此方法。

Parameters
convertId int: Handle for the conversion session.
inputData byte: Input data that needs to be converted.
Returns
DrmConvertedStatus A DrmConvertedStatus object that contains the status of the data conversion, the converted data, and offset for the header and body signature. An application can ignore the offset because it is only relevant to the closeConvertSession() method.

getAvailableDrmEngines

Added in API level 11
String[] getAvailableDrmEngines ()

检索有关在DRM框架中注册的所有DRM插件(代理)的信息。

Returns
String[] A String array of DRM plug-in descriptions.

getConstraints

Added in API level 11
ContentValues getConstraints (String path, 
                int action)

检索受权限保护的内容的约束信息。

Parameters
path String: Path to the content from which you are retrieving DRM constraints.
action int: Action defined in DrmStore.Action.
Returns
ContentValues A ContentValues instance that contains key-value pairs representing the constraints. Null in case of failure. The keys are defined in DrmStore.ConstraintsColumns.

getConstraints

Added in API level 11
ContentValues getConstraints (Uri uri, 
                int action)

检索受权限保护的内容的约束信息。

Parameters
uri Uri: URI for the content from which you are retrieving DRM constraints.
action int: Action defined in DrmStore.Action.
Returns
ContentValues A ContentValues instance that contains key-value pairs representing the constraints. Null in case of failure.

getDrmObjectType

Added in API level 11
int getDrmObjectType (Uri uri, 
                String mimeType)

使用指定的URI或MIME类型检索受权限保护的对象的类型(例如,内容对象,权限对象等)。 至少必须指定一个参数来检索DRM对象类型。

Parameters
uri Uri: URI for the content or null.
mimeType String: MIME type of the content or null.
Returns
int An int that corresponds to a DrmStore.DrmObjectType.

getDrmObjectType

Added in API level 11
int getDrmObjectType (String path, 
                String mimeType)

使用指定的路径或MIME类型检索受权限保护的对象的类型(例如,内容对象,权限对象等)。 至少必须指定一个参数来检索DRM对象类型。

Parameters
path String: Path to the content or null.
mimeType String: MIME type of the content or null.
Returns
int An int that corresponds to a DrmStore.DrmObjectType.

getMetadata

Added in API level 11
ContentValues getMetadata (String path)

检索受权限保护的内容的元数据信息。

Parameters
path String: Path to the content from which you are retrieving metadata information.
Returns
ContentValues A ContentValues instance that contains key-value pairs representing the metadata. Null in case of failure.

getMetadata

Added in API level 11
ContentValues getMetadata (Uri uri)

检索受权限保护的内容的元数据信息。

Parameters
uri Uri: URI for the content from which you are retrieving metadata information.
Returns
ContentValues A ContentValues instance that contains key-value pairs representing the constraints. Null in case of failure.

getOriginalMimeType

Added in API level 11
String getOriginalMimeType (Uri uri)

检索嵌入在原始内容中的MIME类型。

Parameters
uri Uri: URI of the rights-protected content.
Returns
String MIME type of the original content, such as video/mpeg.

getOriginalMimeType

Added in API level 11
String getOriginalMimeType (String path)

检索嵌入在原始内容中的MIME类型。

Parameters
path String: Path to the rights-protected content.
Returns
String The MIME type of the original content, such as video/mpeg.

openConvertSession

Added in API level 11
int openConvertSession (String mimeType)

启动新的转换会话。 每次下载需要转换的受权限保护的文件时,应用程序都必须使用此方法启动转换会话。

此方法仅适用于正向锁定(复制保护)DRM方案。

Parameters
mimeType String: MIME type of the input data packet.
Returns
int A convert ID that is used used to maintain the conversion session.

processDrmInfo

Added in API level 11
int processDrmInfo (DrmInfo drmInfo)

根据信息类型处理给定的DRM信息。

Parameters
drmInfo DrmInfo: The DrmInfo to be processed.
Returns
int ERROR_NONE for success; ERROR_UNKNOWN for failure.

release

Added in API level 16
void release ()

此方法在API级别24中已弃用。
换成close()

removeAllRights

Added in API level 11
int removeAllRights ()

删除与DRM框架相关的每个DRM插件(代理)的所有权限信息。 将在主重置期间使用。

Returns
int ERROR_NONE for success; ERROR_UNKNOWN for failure.

removeRights

Added in API level 11
int removeRights (String path)

删除与给定的受权限保护的内容相关的权利。

Parameters
path String: Path to the rights-protected content.
Returns
int ERROR_NONE for success; ERROR_UNKNOWN for failure.

removeRights

Added in API level 11
int removeRights (Uri uri)

删除与给定的受权限保护的内容相关的权利。

Parameters
uri Uri: URI for the rights-protected content.
Returns
int ERROR_NONE for success; ERROR_UNKNOWN for failure.

saveRights

Added in API level 11
int saveRights (DrmRights drmRights, 
                String rightsPath, 
                String contentPath)

将权限保存到指定路径并将该路径与内容路径相关联。

注意:对于OMA或WM-DRM, rightsPathcontentPath可以为空。

Parameters
drmRights DrmRights: The DrmRights to be saved.
rightsPath String: File path where rights will be saved.
contentPath String: File path where content is saved.
Returns
int ERROR_NONE for success; ERROR_UNKNOWN for failure.
Throws
IOException If the call failed to save rights information at the given rightsPath.

setOnErrorListener

Added in API level 11
void setOnErrorListener (DrmManagerClient.OnErrorListener errorListener)

注册一个 DrmManagerClient.OnErrorListener回调,当DRM框架发送错误信息时调用该回调。

Parameters
errorListener DrmManagerClient.OnErrorListener: Interface definition for the callback.

setOnEventListener

Added in API level 11
void setOnEventListener (DrmManagerClient.OnEventListener eventListener)

注册 DrmManagerClient.OnEventListener回调,当DRM框架发送有关DRM处理的信息时调用该回调。

Parameters
eventListener DrmManagerClient.OnEventListener: Interface definition for the callback.

setOnInfoListener

Added in API level 11
void setOnInfoListener (DrmManagerClient.OnInfoListener infoListener)

注册一个 DrmManagerClient.OnInfoListener回调,当DRM框架在注册或权限获取期间发送状态或警告信息时调用该回调。

Parameters
infoListener DrmManagerClient.OnInfoListener: Interface definition for the callback.

Protected methods

finalize

Added in API level 11
void finalize ()

当垃圾收集确定没有更多对该对象的引用时,由对象上的垃圾回收器调用。 子类会覆盖finalize方法以处置系统资源或执行其他清理。

的常规协定finalize是,它被调用,如果当在Java TM虚拟机已确定不再有由该目的可以通过还没有死亡,除了作为一个动作的结果的任何线程访问的任何手段取决于某些其他可以完成的对象或类别的最终定稿。 finalize方法可以采取任何行动,包括使该对象再次可用于其他线程; 然而, finalize的通常目的是在对象被不可撤销地丢弃之前执行清理操作。 例如,表示输入/输出连接的对象的finalize方法可能会执行显式I / O事务,以在永久丢弃该对象之前中断连接。

Objectfinalize方法Object执行特殊操作; 它只是正常返回。 Object子类可能会覆盖此定义。

Java编程语言不保证哪个线程将为任何给定对象调用finalize方法。 但是,保证调用finalize的线程在调用finalize时不会保留任何用户可见的同步锁。 如果finalize方法引发未捕获的异常,则忽略该异常,并终止该对象的终止。

在针对某个对象调用 finalize方法后,将不会采取进一步的操作,直到Java虚拟机再次确定不再有任何途径可以通过任何尚未死亡的线程访问此对象,包括可能的操作通过准备完成的其他对象或类别,此时该对象可能被丢弃。

对于任何给定的对象,Java虚拟机永远不会多次调用 finalize方法。

finalize方法引发的任何异常 finalize导致终止此对象的终止,但会被忽略。

Throws
Throwable

Hooray!