Aktualizowanie programu Flash Player w celu zapewnienia obsługi modułu Adobe Access

Flash Player 10.1 i nowsze wersje

Ważne : Program Flash Player 11.5 lub nowszy zapewnia integrację z modułem Adobe Access, więc etap aktualizacji — wywołanie metody SystemUpdater.update(SystemUpdaterType.DRM) — jest zbędny. Dotyczy to następujących przeglądarek i platform:

  • Formant Flash Player 11.5 ActiveX dla wszystkich platform poza programem Internet Explorer w systemie Windows 8

  • Wtyczka Flash Player 11.5 dla wszystkich przeglądarek

  • Środowisko Adobe AIR (komputery i urządzenia przenośne)

Etap aktualizacji jest nadal wymagany w następujących przypadkach:

  • Program Internet Explorer w systemie Windows 8

  • Program Flash Player 11.4 lub starszy z wyjątkiem przeglądarki Google Chrome 22 i nowszych (wszystkie platformy) lub 21 i nowszych (system Windows)

Uwaga: Wywołanie metody SystemUpdater.update(SystemUpdaterType.DRM) w systemie z programem Flash Player 11.5 lub nowszym nie ma negatywnych skutków, ale nie powoduje też pobrania jakichkolwiek danych.

Do obsługi mechanizmu Adobe Access w programie Flash Player wymagany jest moduł Adobe Access. Gdy odtwarzacz Flash Player próbuje odtworzyć chronione treści, środowisko wykonawcze wskazuje, czy konieczne jest pobranie modułu lub nowej wersji programu Flash Player. W ten sposób Flash Player daje programistom SWF możliwość zrezygnowania z aktualizacji, jeżeli nie jest ona pożądana.

Zwykle w celu odtwarzania chronionych treści programista uwzględnia aktualizację do wymaganego modułu Adobe Access lub odtwarzacza. Do wykonania aktualizacji może służyć API SystemUpdater, który pozwala pobrać najnowszą wersję modułu Adobe Access lub odtwarzacza Flash Player.

Interfejs API SystemUpdater zezwala jednorazowo tylko na jedną aktualizację. Kod błędu 2202 oznacza, że aktualizacja już jest wykonywana w bieżącym lub innym wystąpieniu środowiska wykonawczego. Na przykład, jeżeli aktualizacja jest przeprowadzana w instancji Flash Player w przeglądarce Internet Explorer, nie można wykonywać aktualizacji w instancji Flash Player działającej w przeglądarce Firefox.

Interfejs API SystemUpdater jest obsługiwany tylko dla platform stacjonarnych.

Uwaga: W przypadku wersji Flash Player wcześniejszych niż 10.1 należy używać zaktualizowanego mechanizmu obsługiwanego we wcześniejszych wersjach odtwarzacza (po ręcznym pobraniu i zainstalowaniu ze strony www.adobe.com lub za pomocą ExpressInstall). Instalator środowiska AIR obsługuje wymagane aktualizacje dla modułu Adobe Access, ale nie obsługuje interfejsu API SystemUpdater.

Wykrywanie zdarzenia update

Gdy wymagana jest aktualizacja modułu Adobe Access, obiekt NetStream wywołuje zdarzenie NetStatusEvent z wartością kodu DRM.UpdateNeeded . Ta wartość oznacza, że obiekt NetStream nie może odtworzyć chronionego strumienia za pomocą żadnego z aktualnie zainstalowanych modułów Adobe Access. Należy wykrywać to zdarzenie zdarzenia i wywołać następujący kod:

SystemUpdater.update(flash.system.SystemUpdaterType.DRM)
Ten kod aktualizuje moduł Adobe Access zainstalowany w odtwarzaczu. Do przeprowadzenia tej aktualizacji modułu nie jest wymagana zgoda użytkownika.

Jeżeli moduł Adobe Access nie zostanie znaleziony, zostanie wygenerowany błąd. Patrz krok 3. w części Szczegółowy obieg pracy API .

Uwaga: Jeżeli zostanie wywołana metoda play() w zaszyfrowanym strumieniu w odtwarzaczach w wersji wcześniejszej niż 10.1, wywoływane jest zdarzenie NetStatusEvent z wartością kodu NetStream.Play.StreamNotFound. W przypadku wcześniejszych wersji odtwarzacza należy użyć mechanizmu aktualizacji obsługiwanego w tych odtwarzaczach (ręczne pobranie i instalacja z www.adobe.com lub za pomocą ExpressInstall).

Jeżeli wymagana jest aktualizacja samego odtwarzacza, obiekt SystemUpdater wywołuje zdarzenie StatusEvent z wartością kodu DRM.UpdateNeededButIncompatible . W przypadku aktualizacji odtwarzacza wymagana jest zgoda użytkownika. W aplikacji należy udostępnić interfejs dla użytkownika umożliwiający wyrażenie zgody na zainicjowanie i przeprowadzenie aktualizacji odtwarzacza. Należy nasłuchiwać zdarzenia StatusEvent i wywołać następujący kod:

SystemUpdater.update(flash.system.SystemUpdaterType.SYSTEM);
Ten kod służy do inicjowania aktualizacji odtwarzacza.

Dodatkowe zdarzenia związane z klasą SystemUpdater są opisane w Skorowidzu języka ActionScript 3.0 dla platformy Adobe Flash .

Po zakończeniu aktualizacji odtwarzacza użytkownik zostanie przekierowany na stronę, na której rozpoczęto aktualizację. Moduł Adobe Access jest pobierany i rozpoczyna się odtwarzanie strumienia.