![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Nov 2013
Сообщений: 47
|
В общем не особо хорошо знаком с FlashDevelop. Сижу через виртуалку. Пытаюсь запустить приложение, в котором используется вызов класса ExternalInterface. Так при дебаге значение ExternalInterface.available равно false. Как сделать его true? Я добавил папку через менеджер настроек добавив там такой путь
![]() где начало путь \\psf это как я понял корень в виртуалке Parallels. Также пробовал создать файл в папке FlashPlayerTrust файл с именем MyTrustFile.cfg внутри которого такая строчка \\psf\Home\Desktop\genplans_flash_src. Не помогло. Вот окно настроек проекта может там что-то нужно поменять ![]() ![]() ![]() При проверке версии плеера тут , вроде бы дебаг стоит. Во FD я нажимаю на синюю кнопку Test Project. В общем просьба объяснить что я делаю не так. До того как спрашивать перерыл и так много материала. Я не понял как вообще генерируется html страница в FB. У меня есть в папке bin index.html. Содержание файла index.html <?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>test</title>
<script type="text/javascript" src="js/swfobject.js"></script>
<script type="text/javascript" src="js/swfaddress.js"></script>
<script type="text/javascript">
var params = {bgcolor:"#FFFFFF", scale:"noscale"};
var attr = {
id: "externalDynamicContent",
name: "externalDynamicContent",
align:"center"
};
swfobject.embedSWF("Plan.swf", "Plan", "900", "604", "10.0.0", 0, {xml:"xml/data.xml"}, params, attr);
</script>
<link href="style.css" rel="stylesheet" type="text/css" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<br><br>
<div id="Plan"></div>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
</body>
</body>
</html>
Последний раз редактировалось helio; 25.04.2014 в 13:08. |
|
|||||
|
ExternalInterface – это взаимодействие флешки с браузером (с JavaScript'ом). Запускайте детище из браузера – и ExternalInterface станет true. Без всяких этих страшных окошек с сайта макромедии )
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
откройте это в браузере.
_______опоздал)
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: Nov 2013
Сообщений: 47
|
Цитата:
где externalDynamicContent это id, указанный в html-коде в объявлении атрибутов. и у меня постоянно в FB выскакивает исключение: [Fault] exception, information=UninitializedError: No External Interface available. Please, disable BlastedMouseWheelBlock А вот полный вывод окна Output в FlashDevelop: Running process: C:\Program Files\FlashDevelop\Tools\fdbuild\fdbuild.exe "\\psf\Home\Desktop\genplans_flash_src\Plan2.as3proj" -ipc 8c0fa801-1260-442f-b83f-717d6dce9787 -version "4.6.0; 3.9" -compiler "C:\Program Files\FlashDevelop\Tools\flexsdk" -library "C:\Program Files\FlashDevelop\Library" Building Plan2 mxmlc -load-config+=obj\Plan2Config.xml -debug=true -incremental=true -swf-version=10 -o obj\Plan2635338667880000000 Incremental compile of 1 Loading configuration file C:\Program Files\FlashDevelop\Tools\flexsdk\frameworks\flex-config.xml Loading configuration file \\psf\Home\Desktop\genplans_flash_src\obj\Plan2Config.xml Files changed: 1 Files affected: 0 obj\Plan2635338667880000000 (695103 bytes) (fcsh)Build succeeded Done(0) [Starting debug session with FDB] [Fault] exception, information=UninitializedError: No External Interface available. Please, disable BlastedMouseWheelBlock if (ExternalInterface.available) { isMac = Capabilities.os.toLowerCase().indexOf("mac") != -1; externalJavascriptFunction = EXTERNAL_JAVASCRIPT_FUNCTION_P1 + flashObjectID + EXTERNAL_JAVASCRIPT_FUNCTION_P2; BlastedMouseWheelBlock.nativeStage = stage; stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseOverStage); stage.addEventListener(Event.MOUSE_LEAVE, mouseLeavesStage); stage.addEventListener(MouseEvent.MOUSE_WHEEL, onMouseWheel); ExternalInterface.call("eval", externalJavascriptFunction); ExternalInterface.addCallback("scrollHappened", scrollHappened); ExternalInterface.call("registerEventListeners", isMac); } else { throw new UninitializedError(NO_EXTERNAL_INTERFACE_ERROR); } |
|
|||||
|
Наверное стоит попробовать обработать исключение, которое генерируется тут:
, или просто закоментить эту строчку. ![]() Добавлено через 1 минуту Или же вот так сделать: |
|
|||||
|
Регистрация: Nov 2013
Сообщений: 47
|
так строчка эта строчка никогда не выполнится в дебаге, т.к. как выше написали, что значение ExternalInterface.available будет равно true, только если будет запущен браузер.
|
|
|||||
|
Подождите, я запутался в том что вам нужно.
Если флеш запущен в браузере, то выполниться первый блок if..else, так как ExternalInterface.available будет равно true. Если же флешке недоступен контейнер, то выполняется второй блок if..else. Чтобы вы смогли собрать приложение, вам нужно обработать исключение, написать типа "Все ок, только запрет прокрутки вы сможете увидеть запустив приложение в броузере!!!" Не то? |
|
|||||
|
Регистрация: Nov 2013
Сообщений: 47
|
alexandrratush, как в FlashDevelop запустить swf через браузер? Я знаю как это делается во FlashBuilder, а вот FD я незнаю.
UPD. Я пытаюсь скомпилировать код в FD. Код не скомпилируется, т.к. ExternalInterface.available не равно true, потому что я не запустил браузер. А как я запущу приложение в браузере, если я не могу его скомпилировать нормально. Последний раз редактировалось helio; 25.04.2014 в 14:54. |
|
|||||
|
А вам зачем через FD, но в браузере? Если задача настолько минимальна, что просто запретить скролл – то протестировать однажды в браузере (без FD, ванильно копируя файлы) и пометить кусок кода как работающий?
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Цитата:
Цитата:
__________________
Reality.getBounds(this); |
![]() |
![]() |
Часовой пояс GMT +4, время: 06:22. |
|
|
« Предыдущая тема | Следующая тема » |
|
|