Uso de la clase DRMErrorEvent

Flash Player 10.1 y posterior, Adobe AIR 1.0 y posterior

Adobe Flash Player y Adobe AIR distribuyen un objeto DRMErrorEvent cuando un objeto NetStream que intenta reproducir contenido protegido se encuentra con un error relacionado con DRM. Si las credenciales del usuario no son válidas en una aplicación de AIR, el objeto DRMAuthenticateEvent se distribuye una y otra vez hasta que el usuario introduce las credenciales correctas o la aplicación no acepta más intentos. La aplicación es responsable de detectar si hay otros eventos de error de DRM para detectar, identificar y controlar los errores relacionados con DRM.

Incluso con credenciales de usuario válidas, las condiciones de la licencia del contenido pueden impedir que pueda ver contenido cifrado. Por ejemplo, a un usuario se le puede denegar el acceso al intentar ver contenido en una aplicación no autorizada. Una aplicación no autorizada es aquella no validada por el editor del contenido cifrado. En este caso se distribuye un objeto DRMErrorEvent.

Los eventos de error también pueden activarse si el contenido está dañado o si la versión de la aplicación no coincide con lo que se especifica en la licencia. La aplicación debe proveer un mecanismo adecuado para controlar los errores.

Propiedades de DRMErrorEvent

Para obtener una lista completa de errores, consulte Errores en tiempo de ejecución en la Referencia de ActionScript 3.0. Los errores relacionados con DRM comienzan en el error 3300.

Creación de un controlador para el evento DRMErrorEvent

El ejemplo siguiente crea un controlador de eventos para el objeto NetStream que dio origen al evento. Se llama cuando el objeto NetStream encuentra un error al intentar reproducir el contenido protegido. Normalmente, cuando una aplicación encuentra un error, lleva a cabo una serie de tareas de limpieza. Seguidamente, informa al usuario del error y ofrece opciones para resolver el problema.

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