Важная информация
. В состав 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 загружен, и можно начать воспроизведение потока.