Recherche d'alternatives à Flash Player à l'aide d'un exemple de projet réel

L'inscription «Le support de Flash Player sera interrompu en décembre 2020 » dans le navigateur peut évoquer diverses émotions de la part des utilisateurs, allant du soulagement que les vulnérabilités ont été résolues, à la réalisation d'une trahison par les géants de la technologie. Les premiers peuvent avoir souffert d'un virus autrefois embarqué sur un site douteux, tandis que les seconds sont contraints de dissimuler un projet qui dépend presque entièrement de cette technologie.

Début 2016, alors que les perspectives de Flash étaient encore optimistes, l'auteur de cet article a eu l'idée de mettre en œuvre le contenu du site à l'aide de vidéos SWF intégrées. À ce moment-là, il y avait déjà eu des appels, comme les affirmations de Steve Jobs contre Adobe en 2010, selon lesquelles un produit propriétaire n'était pas digne d'être intégré dans un système d'exploitation propriétaire. Il devrait y avoir une émoticône ironique ici. À cette époque, le trafic mobile n'était pas si perceptible (et l'herbe est plus verte) et peu de gens prenaient de telles déclarations au sérieux.



De plus, Flash a été utilisé sur de nombreux sites, jeux, applications de bureau et lecteurs vidéo / audio. La portée de son application était très diversifiée et le niveau de pénétration dans ActionScript 2 se situait au niveau des émulateurs de programmation pour enfants. Après AS 3, tout est devenu sérieux, et de nombreux jeux de stratégie sur les réseaux sociaux de l'époque le confirment. Souvenons-nous d'eux avec le flash. D'accord, ne parlons pas de mauvaises choses.



En effet, les propriétaires du site ont eu suffisamment de temps pour ... quoi? Passez à HTML5, WebGL et WebAssembly. Je décrirai la situation plus en détail. Il existe deux sites, dont l'un contient plus d'une centaine de vidéos flash, et le second environ un millier et demi. Ce sont de petites vidéos qui incluent l'animation, la navigation et d'autres bizarreries nécessaires. Presque tous sont faits à la main. Dire que j'étais désolé de m'en séparer, c'est ne rien dire. Mais l'idée de les convertir tous en HTML5, comme recommandé, semblait insensée. Aucun des convertisseurs, décompilateurs ou méthodes Flash intégrés que j'ai testés n'a donné le résultat souhaité.



Il convient de noter qu'il ne suffisait pas de transférer le projet vers des analogues modernes, il doit encore être développé et mis à jour. Avec Flash, un concepteur ordinaire pourrait le faire, avec HTML5, WebGL et WebAssembly, au moins quelques programmeurs sont nécessaires. Les projets indépendants après cela ne peuvent que se reposer.



En 2017, lorsque le coucher du soleil de Flash a été annoncé, nous avons réussi à refaire certaines des animations en utilisant les outils de développement habituels - danser avec un crâne de cerf et un tambourin. À l'aide d'un décompilateur, ces vidéos ont été entièrement désassemblées en ressources image par image, puis à l'aide d'un lecteur js auto-écrit, tout cela plus ou moins chargé et fonctionnait. L'avantage était qu'ils fonctionnaient dans les navigateurs mobiles. En raison des spécificités des sites, ces derniers ont donné peu, mais la tendance s'est maintenue. Mais ce n'est que pour l'animation, où l'interactivité était prise en charge, tout est plus compliqué.



Une petite digression - ces sites simulent le fonctionnement d'un certain programme graphique, où au lieu d'exécuter des commandes, leur description est donnée. Par exemple, il y avait déjà un tutoriel officiel sur 3DS Max, mais pas aussi interactif et pratique que celui mentionné précédemment (en tant qu'auteur, je peux en exagérer les mérites). Pour l'avenir, le tutoriel officiel contenait également des vidéos flash, et avant d'écrire cet article, je l'ai examiné pour savoir comment le problème avait été résolu. Il a été résolu de manière très originale - la plupart d'entre eux ont été simplement découpés, le reste a été converti en vidéo.



Alors, quelles solutions générales peuvent être utilisées après décembre 2020?



Premièrement, étant donné que les dernières versions de Flash Player ont une minuterie de santé insérée, ce qui en fait un simple mortel, vous devez trouver une version où il n'y a pas de telle minuterie (v32.0.0.371) et proposer de l'installer à l'utilisateur. Le problème ici peut être que les liens vers de telles versions sont systématiquement supprimés par le fabricant des sites. Par conséquent, pour donner un lien de téléchargement avec une proposition pour installer un produit obsolète éventuellement vulnérable, comme vous. La méthode peut être pertinente uniquement pour les applications de bureau. À en juger par cette déclaration d'Adobe, la bombe à retardement est fixée au 13 janvier 2021.



Deuxièmement, il est possible de recompiler vers un format vidéo pris en charge comme mentionné précédemment. Cependant, tous les films Flash, en particulier les films interactifs, ne le feront pas.



Troisièmement, tournez-vous vers des solutions toutes faites (sans parler du GNU Gnash et de Mozilla Shumway abandonnés). Auparavant, il y avait l'espoir qu'ils apparaîtront, plus près de la fin de Flash Player. Et ils sont apparus. Une bonne solution est Ruffle, jusqu'à présent la seule qui ait été trouvée. 70% de prise en charge pour AS 1 / AS 2 uniquement. Il est redistribuable gratuitement, sous licence MIT / APACHE. Parmi les défauts - design laid et quelques problèmes de lecture, que j'ai réussi à corriger lors de la publication sur le site. L'installation est très pratique, elle est insérée par un script JS. Fondamentalement, Ruffle Player est un émulateur Adobe Flash Player écrit dans le langage Rust. Le projet peut être construit sous la forme d'une application distincte ou compilé au format WebAssembly pour être incorporé dans des pages Web dans un environnement de navigateur isolé. Cela s'est avéré être la solution à mon problème et à bien d'autres développeurs.Il est à noter que les développeurs de Ruffle se sont associés à archive.org pour préserver la possibilité de parcourir les pages Flash archivées.



Pourquoi Adobe n'a-t-il pas sorti sa version de la platine vinyle Ruffle dès qu'elle sentait la friture? On ne peut que deviner à ce sujet. Mais, plutôt, des analogues dignes apparaîtront et il vous suffit de les attendre, en attendant le blocage sur ce qui est. Ainsi, la mort des anciens lecteurs flash sur le web a été annoncée prématurément. Au moins 2021 est toujours prometteur.



Liens vers les ressources:



Ruffle ruffle.rs

Sites repensés mentionnés (pour une vue d'ensemble): 3dsmax-book.ru , rhino-book.ru

Flash Player version 32.0.0.371 dans archive.org ( téléchargement )



All Articles