Atualização do Flash Player para oferecer suporte ao Adobe Access

Flash Player 10.1 e posterior

Importante: o Flash Player 11.5 e superior integram o módulo do Adobe Access, portanto, a etapa de atualização (chamar SystemUpdater.update(SystemUpdaterType.DRM)) é desnecessária. Isso inclui os seguintes navegadores e plataformas:

  • Controle ActiveX do Flash Player 11.5, para todas as plataformas exceto o Internet Explorer no Windows 8

  • Plug-in do Flash Player 11.5, para todos os navegadores

  • Adobe AIR (desktop e dispositivos móveis)

Isso significa que a etapa de atualização é necessária nos seguintes casos:

  • Internet Explorer no Windows 8

  • Flash Player 11.4 e inferior, exceto no Chrome 22 e superior (todas as plataformas) ou 21 e superior (Windows)

Nota: Ainda é possível chamar SystemUpdater.update(SystemUpdaterType.DRM)com segurança em um sistema com Flash Player 11.5 ou superior, mas nenhum item será baixado.

Para oferecer suporte ao Adobe Access o Flash Player requer o módulo do Adobe Access. Quando o Flash Player tenta reproduzir conteúdo protegido, o tempo de execução indica se o módulo ou uma nova versão do Flash Player precisam ser baixados. Desta maneira, o Flash Player fornece aos desenvolvedores SWF a opção de não atualizar caso queiram.

Na maioria dos casos, para reproduzir conteúdo protegido, os desenvolvedores de SWF atualizam para o módulo requerido pelo Adobe Access ou pelo player. Para atualizar, pode-se utilizar a API SystemUpdater para obter a última versão do módulo Adobe Access ou do Flash Player.

A API SystemUpdater permite apenas uma atualização por vez. O código de erro 2202 indica que uma atualização já está em andamento na ocorrência atual do tempo de execução ou em outra ocorrência. Por exemplo, se uma atualização está em andamento em uma ocorrência do Flash Player no Internet Explorer, uma atualização não poderá ser executada em uma ocorrência em execução no Firefox.

A API SystemUpdater é suportada para plataformas de desktop apenas.

Nota: Em versões do Flash Player anteriores a 10.1, utilize o mecanismo de atualização suportado em versões anteriores do player (baixe e instale manualmente do site www.adobe.com ou ExpressInstall). O instalador do AIR também lida com as atualizações necessárias para o Adobe Access e não suporta a API SystemUpdater.

Procurando um evento de atualização

Quando uma atualização do módulo Adobe Access é necessária, o objeto NetStream envia um NetStatusEvent com um valor de código DRM.UpdateNeeded. Esse valor indica que o objeto NetStream não pode reproduzir o stream protegido com nenhum dos módulos do Adobe Access instalados. Procure por esse evento e chame o seguinte código:

SystemUpdater.update(flash.system.SystemUpdaterType.DRM)
Esse código atualiza o módulo Adobe Access instalado no player. Não é necessária a aprovação do usuário para essa atualização de módulo.

Caso o módulo Adobe Access não seja encontrado, um erro é exibido. Consulte o passo 3 do Fluxo de trabalho detalhado.

Nota: Caso play() é chamado em um stream criptografado em players anteriores ao 10.1, um NetStatusEvent como valor de código de NetStream.Play.StreamNotFound é enviado. Em versões anteriores de players, utilize o mecanismo de atualização suportado para estes players (baixe e instale manualmente do site www.adobe.com ou ExpressInstall).

Quando uma atualização para o próprio player é necessária o objeto SystemUpdater envia um StatusEvent com um código de DRM.UpdateNeededButIncompatible. Para uma atualização do player, a aprovação do usuário é necessária. Forneça em seu aplicativo um interface para que o usuário concorde e inicie a atualização do player. Procure pelo evento StatusEvent e chame o seguinte código:

SystemUpdater.update(flash.system.SystemUpdaterType.SYSTEM);
Este código inicia a atualização do player.

Eventos adicionais da classe SystemUpdater estão documentados em Referência do ActionScript® 3.0 para Adobe® Flash® Platform.

Depois que a atualização do player estiver completo, o usuário é redirecionado para a página onde a atualização tem início. O módulo Adobe Access é baixado e o stream pode ser reproduzido.