Uso della classe DRMErrorEvent

Flash Player 10.1 e versioni successive, Adobe AIR 1.0 e versioni successive

Adobe Flash Player e Adobe AIR inviano un oggetto DRMErrorEvent quando un oggetto NetStream, che cerca di riprodurre contenuto protetto, rileva un errore correlato a DRM. Se le credenziali utente non sono valide in un'applicazione AIR, l'oggetto DRMAuthenticateEvent effettua invii ripetuti fino a quando l'utente non immette credenziali valide o l'applicazione nega ulteriori tentativi. L'applicazione deve intercettare qualsiasi altro evento di errore DRM per rilevare, identificare e gestire errori correlati a DRM.

Anche con credenziali utente valide, i termini del voucher del contenuto possono ancora impedire a un utente di visualizzare il contenuto crittografato. Ad esempio, è possibile negare a un utente la possibilità di visualizzare il contenuto in un'applicazione non autorizzata. Un'applicazione non autorizzata è un'applicazione che non è stata convalidata dall'editore del contenuto crittografato. In tal caso, viene inviato un oggetto DRMErrorEvent.

Gli eventi di errore possono essere generati anche se il contenuto è danneggiato o se la versione dell'applicazione non corrisponde a quanto specificato nel voucher. L'applicazione deve fornire un meccanismo appropriato per la gestione degli errori.

Proprietà DRMErrorEvent

Per un elenco completo degli errori, vedete Codici di errore di runtime nella Guida di riferimento ActionScript 3.0. Gli errori correlati a DRM iniziano dall'errore 3300.

Creazione di un gestore DRMErrorEvent

L'esempio seguente crea un gestore eventi per l'evento NetStream che ha originato l'evento. Viene chiamato quando si verifica un errore durante il tentativo del NetStream di riprodurre il contenuto protetto. In genere, quando si verifica un errore in un'applicazione, questa esegue un certo numero di attività di pulitura. Quindi informa l'utente dell'errore e fornisce opzioni per la risoluzione del problema.

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