- Adobe Flash Player EOL General Information Page
- Javascript to flash communication
- 6 Answers 6
- Linked
- Related
- Hot Network Questions
- Subscribe to RSS
- Управляем Flash-объектом на Javascript
- Для вдохновения
- Звуковое уведомление
- Рассмотрим следующий пример:
- Садимся за flash
- Особенности загрузки flash-объекта
- Осталось немного работы на JavaScript
- Форум
- Справочник
- Javascript Flash мост
- Связь JS с объектом Flash
- Flash вызывает Javascript
- getURL
- fsCommand
- Функция обработки fsCommand
- Дополнительная обвязка для IE/Win
- Форум
- Справочник
- Javascript Flash мост
- Связь JS с объектом Flash
- Flash вызывает Javascript
- getURL
- fsCommand
- Функция обработки fsCommand
- Дополнительная обвязка для IE/Win
Adobe Flash Player EOL General Information Page
Since Adobe no longer supports Flash Player after December 31, 2020 and blocked Flash content from running in Flash Player beginning January 12, 2021, Adobe strongly recommends all users immediately uninstall Flash Player to help protect their systems.
Some users may continue to see reminders from Adobe to uninstall Flash Player from their system. See below for more details on how to uninstall Flash Player.
UPDATED: January 13, 2021
Adobe stopped supporting Flash Player beginning December 31, 2020 (“EOL Date”), as previously announced in July 2017.
Open standards such as HTML5, WebGL, and WebAssembly have continually matured over the years and serve as viable alternatives for Flash content. Also, major browser vendors are integrating these open standards into their browsers and deprecating most other plug-ins (like Flash Player). See Flash Player EOL announcements from Apple, Facebook, Google, Microsoft and Mozilla.
By providing more than three years’ advance notice, Adobe believes that there has been sufficient time for developers, designers, businesses, and other parties to migrate Flash content to new standards. The EOL timing was in coordination with some of the major browser vendors.
After the EOL Date, Adobe will not issue Flash Player updates or security patches. Adobe strongly recommends immediately uninstalling Flash Player. To help secure your system, Adobe blocked Flash content from running in Flash Player beginning January 12, 2021. Major browser vendors have disabled and will continue to disable Flash Player from running.
Flash Player may remain on your system unless you uninstall it. Uninstalling Flash Player will help secure your system since Adobe will not issue Flash Player updates or security patches after the EOL Date. Adobe blocked Flash content from running in Flash Player beginning January 12, 2021 and the major browser vendors have disabled and will continue to disable Flash Player from running after the EOL Date.
Click “Uninstall” when prompted by Adobe, or follow these manual uninstall instructions for Windows and Mac users.
Since Adobe is no longer supporting Flash Player after the EOL Date, Adobe blocked Flash content from running in Flash Player beginning January 12, 2021 to help secure your system. Flash Player may remain on your system unless you uninstall it.
Browsers and operating systems that support Flash Player continue to decrease so Adobe strongly recommends immediately uninstalling Flash Player.
Apple Safari version 14, released for macOS in September 2020, no longer loads Flash Player or runs Flash content. Please visit Apple’s Safari support for more information.
Please visit http://www.adobe.com/products/flashplayer/tech-specs.html for the latest list of Flash-supported browsers and operating systems.
No. Adobe has removed Flash Player download pages from its site. Adobe blocked Flash content from running in Flash Player beginning January 12, 2021.
No. These versions of Flash Player are not authorized by Adobe. You should not use unauthorized versions of Flash Player. Unauthorized downloads are a common source of malware and viruses.
Adobe will not issue Flash Player updates or security patches after the EOL Date. Adobe strongly recommends uninstalling Flash Player immediately.
Javascript to flash communication
I am trying to call a Actionscript function from javascript but I am having problems in Internet Explorer. I am using Swiff.remote in mootools 1.2.1 to call the actionscript function ie:
This all works fine in FireFox, Safari and Opera but I’m getting an «unspecified» error in Internet Explorer 6 and 7. I have tried using the bog standard:
Thanks for any help. Mark
6 Answers 6
I’m not familiar with the Swiff plugin, but you don’t need a plugin to call flash functions from Javascript. It’s even easier to do it natively.
Ah, here is the answer to you problem.
SO if the client is Internet Explorer, you should be fetching the movie from the document object. 🙂
Wanted to post this answer, as this may be what’s causing problems for others, obviously this is not causing your problem. Still looking into a solution for your issue.
The SWF file must be compiled with the ExternalInterface component. See the Adobe documentation on External Interface for more information.
Action Script 2.0
Action Script 3.0
Maybe this can help you out, looks like a similar problem but using the swfobject.
You can call it directly:
Of course sendResult has to be registered with ExternalInterface.addCallback() in the AS code and the flash file has to fully loaded (otherwise all calls fail).
An example can be found in this github repository (fancyupload): The as3proj contains the AS source, the JS remote calls are in Swiff.Uploader.js.
If your code works in all browsers except Internet Explorer, it’s a good bet that it’s because the Flash Player for IE is an ActiveX plugin. I read somewhere that ActiveX communicates in .NET format and Flash’s external API communicates in XML.
I’m also trying to learn Javascript-Flash communication on Internet Explorer, so I’ll keep you folks posted on what I learn.
Linked
Related
Hot Network Questions
Subscribe to RSS
To subscribe to this RSS feed, copy and paste this URL into your RSS reader.
site design / logo © 2021 Stack Exchange Inc; user contributions licensed under cc by-sa. rev 2021.4.16.39093
By clicking “Accept all cookies”, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy.
Управляем Flash-объектом на Javascript
Возможности JavaScript в 95% случаев позволяют решить любую задачу для Web 2.0. Но иногда хочется чуточку больше, чуточку красивее, возможно, чуточку быстрее. В этой статье на примерах я хочу показать, как восполнить этих 5% недостающего функционала средствами Flash.
Эта статья будет полезна разработчикам, которые пишут в основном на JavaScript и имеют минимальные знания ActionScript 3.
Для вдохновения
Вдохновил меня на написание этой статьи пример из пакета FancyUpload, реализующий одновременную загрузку нескольких файлов на сервер с симпатичным прогресс-баром в стиле gmail (обратите внимание: можно сразу выбирать несколько файлов).
Этот пример интересен тем, что дизайн и управление контролируется средствами CSS и JavaScript. JavaScript при необходимости использует необходимый функционал из Flash.
Если Вам понравилось, идем дальше: мы рассмотрим как это работает на более простом примере.
Звуковое уведомление
Рассмотрим следующий пример:
При работе с нашей страницей может возникнуть очень важное событие. Настолько важное, что о нем нужно как-то уведомить, даже если пользователь находится в другом окне или другой программе. Один из вариантов – это подать звуковой сигнал. Возможное решение — нестандартный тег BGSOUND, но мы остановимся на Flash. Реализуем следующий функционал: в JavaScript-коде можно будет указать имя mp3-файла для проигрывания (назовем его рингтон), количество повторов для проигрываемого рингтона, уровень звучания в процентах, и, в расширенном варианте, уровень по нарастающей «от» и «до» и время в секундах, за которое уровень звучания должен нарастать.
Садимся за flash
Для того, чтоб из базового класса Flash-ролика “расшарить” любой из методов для доступа к нему, из JavaScript необходимо подключить ExternalInterface:
а также описать метод для доступа директивой ExternalInterface.addCallback:
Я набросал базовый класс для нашего примера, функционал реализующий проигрывание рингтона вынес в отдельный класс com.ria.media.Ringtone, его реализация не особо важна для нашего примера.
Особенности загрузки flash-объекта
Есть еще одна деталь, которую нужно учитывать при проектировании Flash-ролика: Загрузка flash-объекта производится не моментально, то-есть, между моментом, когда средствами JavaScript flash-объект внедряется в код и моментом, когда стают доступными “расширенные” методы нашего объекта проходит некоторое время.
Однозначно установить факт доступности методов можно, выполнив заданную нами JavaScript-функцию, после всех директив ExternalInterface.addCallback. Это реализуется, например, директивой ExternalInterface.call
Если flash-ролик вставляется не средствами JavaScript, то возможна ситуация, когда flash подгрузился раньше, чем JavaScript-код и обращение к заданой нами функции приведет к ошибке. Как решается такая ситуация можно посмотреть здесь
Осталось немного работы на JavaScript
Заранее приношу свои извинения за неудобства, но я привык писать на MooTools и не хочу отступать от этой привычки. Загружать Flash-ролик я буду удобным плагином MooTools 1.2 Swiff, анлогичный модуль есть для jQuery, ну и универсальное решение SWFObject (про SWFObject на Хабре)
После подгрузки flash-объекта к его “расшареным” методам можно обратиться приблизительно таким образом на чистом JavaScript:
Собственно, вот и все, что может пригодиться при написании собственного JavaScript-кода.
Форум
Справочник
Javascript Flash мост
Эта статья описывает, как вызывать из Javascript методы Flash и наоборот.
Используя эти способы, javascript может получить доступ к буферу обмена ОС, хранимым объектам SharedObject, управлять flash-интерфейсами и многое другое.
Связь JS с объектом Flash
Какой бы способ коммуникации мы не выбрали, для начала JS должен уметь находить объект Flash на странице.
Для того, чтобы все работало кроссбраузерно, Flash-ролик нужно вставить с использованием обоих тегов: object и embed , например так:
В этом примере существенны детали:
- Имя ролика BridgeMovie дублируется как object.id и embed.name .
- Путь к ролику bridge.swf дублируется в object/embed
- Параметр allowScriptAccess=»sameDomain»
- Дублируются размеры ролика
Теперь объект ролика можно получить из window[«BridgeMovie»] для IE или document[«BridgeMovie»] в остальных браузерах:
Далее мы разберем средства для коммуникации с этим роликом.
Flash вызывает Javascript
getURL
Самый древний, знакомый большинству флешеров способ — это вызов javascript-функции посредством getURL с протоколом javascript:
- Работает во всех броузерах
- Flash 5 и выше
- Прост в применении
- Не возвращает результат
- Длина передаваемой строки ограничена 508 символами.
fsCommand
Вызов осуществляется так:
Чтобы принять этот вызов, в Javascript должна быть специальная обвязка.
Редактор Macromedia Flash может генерировать ее автоматически при публикации ролика.
Для этого нужно в Publish Settings:
- Во вкладке Formats включить публикацию html-файла
- Во вкладке HTML выбрать Template: Flash with FSCommand
Генерируемый шаблон javascript-обвязки состоит из двух частей: функция обработки и дополнительного кода для IE.
Функция обработки fsCommand
Название функции имеет вид _DoFSCommand . В нашем случае это BridgeMovie_DoFSCommand
Первый аргумент — имя вызываемой функции, второй — строка аргументов.
Простейший вариант выглядит так:
Вызов, например, функции show из Flash приведет к цепочке вызовов:
- (Flash) fsCommand(«show»,»something»)
- (JS) BridgeMovie_DoFSCommand(«show»,»something»)
- (JS) show(«something»)
Дополнительная обвязка для IE/Win
Этот код нужен только для IE под Windows, в дополнение к BridgeMovie_DoFSCommand , так как в этом браузере fsCommand вызывает не Javascript, а VBScript.
Форум
Справочник
Javascript Flash мост
Эта статья описывает, как вызывать из Javascript методы Flash и наоборот.
Используя эти способы, javascript может получить доступ к буферу обмена ОС, хранимым объектам SharedObject, управлять flash-интерфейсами и многое другое.
Связь JS с объектом Flash
Какой бы способ коммуникации мы не выбрали, для начала JS должен уметь находить объект Flash на странице.
Для того, чтобы все работало кроссбраузерно, Flash-ролик нужно вставить с использованием обоих тегов: object и embed , например так:
В этом примере существенны детали:
- Имя ролика BridgeMovie дублируется как object.id и embed.name .
- Путь к ролику bridge.swf дублируется в object/embed
- Параметр allowScriptAccess=»sameDomain»
- Дублируются размеры ролика
Теперь объект ролика можно получить из window[«BridgeMovie»] для IE или document[«BridgeMovie»] в остальных браузерах:
Далее мы разберем средства для коммуникации с этим роликом.
Flash вызывает Javascript
getURL
Самый древний, знакомый большинству флешеров способ — это вызов javascript-функции посредством getURL с протоколом javascript:
- Работает во всех броузерах
- Flash 5 и выше
- Прост в применении
- Не возвращает результат
- Длина передаваемой строки ограничена 508 символами.
fsCommand
Вызов осуществляется так:
Чтобы принять этот вызов, в Javascript должна быть специальная обвязка.
Редактор Macromedia Flash может генерировать ее автоматически при публикации ролика.
Для этого нужно в Publish Settings:
- Во вкладке Formats включить публикацию html-файла
- Во вкладке HTML выбрать Template: Flash with FSCommand
Генерируемый шаблон javascript-обвязки состоит из двух частей: функция обработки и дополнительного кода для IE.
Функция обработки fsCommand
Название функции имеет вид _DoFSCommand . В нашем случае это BridgeMovie_DoFSCommand
Первый аргумент — имя вызываемой функции, второй — строка аргументов.
Простейший вариант выглядит так:
Вызов, например, функции show из Flash приведет к цепочке вызовов:
- (Flash) fsCommand(«show»,»something»)
- (JS) BridgeMovie_DoFSCommand(«show»,»something»)
- (JS) show(«something»)
Дополнительная обвязка для IE/Win
Этот код нужен только для IE под Windows, в дополнение к BridgeMovie_DoFSCommand , так как в этом браузере fsCommand вызывает не Javascript, а VBScript.