Установите flashvars SWF-файла в Flex перед загрузкой до завершения
-
20-09-2019 - |
Вопрос
У меня есть Flash-апплет, который я хочу встроить в гибкий файл, который загружает файл панорамы в SWF-проигрыватель (PurePlayer от Immervision) - я использую следующий код:
<mx:SWFLoader id="mapLoader"
width="740"
height="588"
source="../bin-debug/PurePlayer.swf?flashvars='panorama=../bin-debug/untitled.ivp'" />
Апплет загружается нормально, но он не выполняет файл...
Документация PurePlayer использует следующую переменную:панорама=myPano.ivp"
Если я загружаю тот же SWF-файл через окно браузера, он отлично работает со следующим URL: http://localhost/pureplayer/PurePlayer.swf?panorama=untitled.ivp
Решение
Вы пробовали воспроизвести фильм после в вашем полном обработчике
// Play it
Object(mapLoader.content).play();
Вы также могли бы рассмотреть возможность прослушивания события после завершения воспроизведения вашего фильма или когда в вашем приложении Flash происходит пользовательское взаимодействие на основе, добавив добавление обработчика событий в вашем приложении Flex в полный обработчик перед его воспроизведением.Очевидно, вам нужно будет знать тип события, которое будет отправлять приложение Flash, но если приложения-боты принадлежат вам, это не должно быть проблемой.
mapLoader.content.addEventListener( "yourFlashEvent", handleYourFlashEvent )
Другие советы
Вы можете указать параметр panorama в URL-адресе swf-файла, а не в виде flashvar, например:
<mx:SWFLoader id="swfLoaderPure"
width="100%" height="100%"
source="../bin-debug/PurePlayer.swf?panorama=myPano.ivp"
complete="onLoadComplete(event)"
/>