Mise à jour de Flash Player en vue de prendre en charge Adobe Access

Flash Player 10.1 et les versions ultérieures

Important : Flash Player 11.5 et les versions ultérieures intègrent le module Adobe Access ; l’étape de mise à jour (l’appel de SystemUpdater.update(SystemUpdaterType.DRM) ) est donc inutile. Les navigateurs et plates-formes suivants sont concernés :

  • Contrôle ActiveX Flash Player 11.5, pour toutes les plates-formes à l’exception d’Internet Explorer sous Windows 8

  • Plug-in Flash Player 11.5, pour tous les navigateurs

  • Adobe AIR (version de bureau et version mobile)

L’étape de mise à jour est toujours requise dans les cas suivants :

  • Internet Explorer sous Windows 8

  • Flash Player 11.4 et versions antérieures, à l’exception de Google Chrome 22 et des versions ultérieures (toutes les plates-formes) ou de Google Chrome 21 et des versions ultérieures (Windows)

Remarque : vous pouvez toujours appeler SystemUpdater.update(SystemUpdaterType.DRM) sur un système doté de Flash Player 11.5 ou d’une version ultérieure, mais rien n’est téléchargé.

Flash Player doit disposer du module Adobe Access pour prendre en charge ses fonctions. Lorsque Flash Player tente de lire un contenu protégé, le moteur d’exécution indique si le module ou une nouvelle version de Flash Player doit être téléchargé. Flash Player permet ainsi aux développeurs SWF de ne pas faire de mise à jour, le cas échéant.

En règle générale, pour lire du contenu protégé, les développeurs SWF mettent à jour le module ou le lecteur Adobe Access requis. Pour effectuer la mise à jour, vous disposez de l’API SystemUpdater, qui permet d’obtenir la version la plus récente du module Adobe Access ou de Flash Player.

L’API SystemUpdater n’autorise qu’une mise à jour à la fois. Le code d’erreur 2202 indique qu’une mise à jour est en cours d’exécution dans l’occurrence active du moteur d’exécution ou une autre occurrence. Ainsi, s’il se produit une mise à jour d’une occurrence de Flash Player dans Internet Explorer, il est impossible d’effectuer une mise à jour d’une occurrence de Flash Player dans Firefox.

Seules les plates-formes de bureau prennent en charge l’API SystemUpdater.

Remarque : pour les versions de Flash Player antérieures à 10.1, utilisez le mécanisme de mise à jour pris en charge par les versions antérieures du lecteur (téléchargement et installation manuels à partir du site www.adobe.com ou d’ExpressInstall). Le programme d’installation d’AIR gère par ailleurs les mises à jour requises d’Adobe Access, mais non l’API SystemUpdater.

Ecoute d’un événement de mise à jour

Lorsqu’une mise à jour du module Adobe Access est nécessaire, l’objet NetStream distribue un événement NetStatusEvent dont la valeur de code correspond à DRM.UpdateNeeded . Cette valeur indique que l’objet NetStream ne peut pas lire le flux protégé par le biais de tout module Adobe Access actuellement installé. Ecoutez cet événement et appelez le code suivant :

SystemUpdater.update(flash.system.SystemUpdaterType.DRM)
Ce code met à jour le module Adobe Access installé dans le lecteur. L’accord de l’utilisateur pour cette mise à jour du module n’est pas obligatoire.

Si le module Adobe Access est introuvable, une erreur est renvoyée. Voir l’étape 3 de Flux de travail détaillé des API .

Remarque : si play() est appelé sur un flux chiffré dans des lecteurs antérieurs à 10.1, un événement NetStatusEvent dont la valeur de code correspond à NetStream.Play.StreamNotFound est distribué. Pour les lecteurs antérieurs, faites appel au mécanisme de mise à jour pris en charge (téléchargement et installation manuels à partir du site www.adobe.com ou d’ExpressInstall).

S’il est nécessaire de mettre à jour le lecteur en tant que tel, l’objet SystemUpdater distribue un événement StatusEvent dont la valeur de code correspond à DRM.UpdateNeededButIncompatible . Pour mettre à jour le lecteur, l’accord de l’utilisateur est obligatoire. Intégrez à l’application une interface permettant à l’utilisateur d’accepter et de démarrer la mise à jour du lecteur. Ecoutez l’événement StatusEvent et appelez le code suivant :

SystemUpdater.update(flash.system.SystemUpdaterType.SYSTEM);
Ce code démarre la mise à jour du lecteur.

D’autres événements associés à la classe SystemUpdater sont passés en revue dans le manuel Guide de référence ActionScript 3.0 pour la plate-forme Adobe Flash .

Une fois la mise à jour du lecteur terminée, l’utilisateur est renvoyé à la page initiale. Le module Adobe Access est téléchargé et la lecture du flux peut démarrer.