PDA

Просмотр полной версии : Список открытых методов для ExternalInterface


nick_van_rijn
02.12.2013, 18:59
Как можно получить список функций открытых для внешнего вызова в as3 -ExternalInterface.addCallback()
Вопрос возник, в связи с желанием контролировать набор методов, доступных для вызова и соответственно версию реализуемого роликом интерфейса.
Флэш(ActiveX) встроенный в Win приложение.
Спасибо.

bav
02.12.2013, 21:36
Насколько мне известно нативного метода не существует. Очевидный выход - добавлять в ролики метод (скажем, getMovieMethods), который по запросу будет возвращать названия функций, зарегистрированных через addCallback.

alatar
02.12.2013, 21:53
Лучше из ролика вызывать функцию в контейнере и передавать список методов в аргументах.

nick_van_rijn
03.12.2013, 00:25
Спасибо за ответы. Но проблема в том что приложение массово развернуто. С обновлением контейнера проблем нет, а вот флэш обновить сложнее. И стоит задача, обновив только контейнер, по-разному работать с разными версиями роликов.
почитал интернет, когда IE загружает ролик, в дереве DOM открытые методы видны.

alatar
03.12.2013, 12:26
Учитывая, что методы добавляются и удаляются в рантайме, а взаимодействие с контейнером использует событийную модель, звучит сомнительно. Ссылкой не поделитесть?

nick_van_rijn
03.12.2013, 13:48
Да, правильно. Вчитался внимательнее. Выходит путь в сторону декомпиляции получения кода as3.
http://stackoverflow.com/questions/2052361/get-externalinterface-definitions-in-javascript