使用 DRMErrorEvent 类

Flash Player 10.1 和更高版本,Adobe AIR 1.0 和更高版本

Adobe Flash Player 和 Adobe AIR 在 NetStream 对象尝试播放保护的内容过程中遇到与 DRM 有关的错误时调度 DRMErrorEvent 对象。如果 AIR 应用程序中的用户凭据无效,则 DRMAuthenticateEvent 对象将重复调度,直到用户输入有效的凭据,或者应用程序拒绝进一步尝试。应用程序负责侦听任何其他 DRM 错误事件,以检测、识别和处理与 DRM 相关的错误。在 Flash Player 中,应用程序侦听所有 DRM 错误事件,以检测、识别和处理与 DRM 相关的错误。

即使使用有效的用户凭据,内容凭证的条款仍可能阻止用户查看加密内容。例如,当用户尝试查看未经授权的应用程序中的内容时,可能会被拒绝访问。未经授权的应用程序是加密内容的发布者未验证的应用程序。此时,将调度 DRMErrorEvent 对象。

如果内容已损坏或者应用程序的版本与凭证指定的版本不匹配,则也会引发错误事件。应用程序必须提供适当的机制来处理错误。

DRMErrorEvent 属性

有关错误的完整列表,请参阅《用于 Adobe® Flash® Professional CS5 的 ActionScript® 3.0 参考》中的运行时错误代码。与 DRM 相关的错误从错误 3300 开始。

创建 DRMErrorEvent 处理函数

以下示例将针对启动了事件的 NetStream 对象创建一个事件处理函数。当 NetStream 在尝试播放保护的内容的过程中遇到错误时,调用该事件处理函数。通常,当应用程序遇到错误时,会执行任意次数的清理任务。应用程序随后会通知用户该错误,并提供用于解决该问题的选项。

private function drmErrorEventHandler(event:DRMErrorEvent):void  
{ 
    trace(event.toString()); 
}