Обновление проигрывателя Flash Player для поддержки Adobe Access

Flash Player 10.1 или более поздних версий

Важная информация . В состав Flash Player 11.5 и более поздних версий уже включен модуль Adobe Access, поэтому обновление (посредством метода SystemUpdater.update(SystemUpdaterType.DRM) ) не требуется. Это относится к следующим браузерам и платформам:

  • Компонент Flash Player 11.5 ActiveX control — для всех платформ, за исключением Internet Explorer на Windows 8;

  • Плагин Flash Player 11.5 — для всех браузеров;

  • Adobe AIR (для настольных и мобильных систем).

Это означает, что обновление все же требуется в следующих случаях:

  • Internet Explorer на Windows 8;

  • Flash Player 11.4 и более старых версий, за исключением браузера Google Chrome версии 22 и более поздней (для всех платформ) или 21 и более поздней (для Windows).

Примечание. Вызов метода SystemUpdater.update(SystemUpdaterType.DRM) в системах с Flash Player 11.5 и более поздних версий не приведет к ошибкам, и при этом ничего не будет загружено.

Для поддержки Adobe Access в проигрывателе Flash Player требуется модуль Adobe Access. Когда проигрыватель Flash Player пытается воспроизвести защищенное содержимое, в среде выполнения показано, необходимо ли загрузить модуль или новую версию проигрывателя Flash Player. Таким способом проигрыватель Flash Player предоставляет разработчикам SWF возможность отказаться от обновления.

В большинстве случаев для воспроизведения защищенного содержимого разработчикам SWF потребуется выполнить обновление для получения необходимого модуля Adobe Access или версии проигрывателя. Для обновления можно использовать API-интерфейс SystemUpdater, позволяющий получить последнюю версию модуля Adobe Access или проигрывателя Flash Player.

API-интерфейс SystemUpdater позволяет выполнять только одно обновление за один раз. Ошибка с кодом 2202 обозначает, что обновление уже выполняется в текущем или другом экземпляре среды выполнения. Например, если обновление выполняется в экземпляре Flash Player в браузере Internet Explorer, выполнение обновления в экземпляре Flash Player в браузере Firefox невозможно.

API-интерфейс SystemUpdater поддерживается только для настольных платформ.

Примечание. Для версий Flash Player, предшествующих 10.1, используйте механизм обновления, поддерживаемый в более ранних версиях проигрывателя (загрузка вручную или установка с сайта www.adobe.com или ExpressInstall). Помимо этого, установщик AIR обрабатывает необходимые обновления для Adobe Access и не поддерживает API-интерфейс SystemUpdater.

Прослушивание события обновления

Когда требуется обновление модуля Adobe Access, объект NetStream отправляет событие NetStatusEvent с кодовым значением DRM.UpdateNeeded . Это значение показывает, что объекту NetStream не удается воспроизвести защищенный поток с использованием какого-либо из установленных в данный момент модулей Adobe Access. Прослушайте это событие и вызовите следующий код:

SystemUpdater.update(flash.system.SystemUpdaterType.DRM)
Этот код позволяет обновить модуль Adobe Access, установленный в проигрывателе. Согласие пользователя на обновление этого модуля не требуется.

Если модуль Adobe Access не найден, возникает ошибка. См. действие 3 в разделе « Подробный технологический процесс API-интерфейса ».

Примечание. Если метод play() вызывается для зашифрованного потока в версиях проигрывателя, предшествующих 10.1, отправляется объект NetStatusEvent с кодовым значением NetStream.Play.StreamNotFound. В более ранних версиях проигрывателя используйте механизм обновления, поддерживаемый в этих проигрывателях (обновление вручную или установка с сайта www.adobe.com или ExpressInstall).

Если требуется обновление самого проигрывателя, объект SystemUpdater отправляет событие StatusEvent с кодовым значением DRM.UpdateNeededButIncompatible . Для обновления проигрывателя требуется согласие пользователя. В приложении предусмотрите интерфейс, в котором пользователь сможет дать согласие и запустить обновление проигрывателя. Прослушайте событие StatusEvent и вызовите следующий код:

SystemUpdater.update(flash.system.SystemUpdaterType.SYSTEM);
Этот код позволяет запустить обновление проигрывателя.

Дополнительные события класса SystemUpdater описаны в cправочнике ActionScript® 3.0 для платформы Adobe® Flash® Platform .

По завершении обновления проигрывателя выполняется переход на страницу, на которой началось обновление. Модуль Adobe Access загружен, и можно начать воспроизведение потока.