|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: May 2010
Сообщений: 43
|
Как скачать изображение с сайта в AIR
Суть проблемы: не могу скачать изображение с моего сайта, разместил файл crossdomain.xml в корень, но приложение упорно выдает "URL not found", в параметрах air стоит "только локальная система" и подсвечивается серым, что поменять нельзя.
package { import flash.display.MovieClip; import flash.events.MouseEvent; import flash.events.Event; import flash.display.Loader; import flash.net.URLRequest; import flash.events.IOErrorEvent; import flash.system.LoaderContext; public class main extends MovieClip{ var loader:Loader=new Loader(); public function main(){ stage.addEventListener(MouseEvent.CLICK,go); } private function go(e:MouseEvent){ var context:LoaderContext = new LoaderContext(); context.checkPolicyFile = true; var r:URLRequest=new URLRequest("http://bezfa.narod.ru/r.jpg"); loader.contentLoaderInfo.addEventListener(Event.COMPLETE,go1); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR,io); loader.load(r,context); } private function go1(e:Event){ addChild(loader); } private function io(e:IOErrorEvent){ trace(e.text); } } } |
|
|||||
Регистрация: Jun 2011
Сообщений: 212
|
1. AIR и "local playback security" - не имеют друг к другу отношения (AIR - это всегда локальное приложение, и для него "security policy" отличается от Flash Player.
2. Т.к. вам не нужно данные загружать в DisplayObject, то правильнее будет воспользоваться URLLoader, а не Loader. |
|
|||||
Регистрация: May 2010
Сообщений: 43
|
Хорошо, как тогда сделать, чтобы вышеописанный код работал в AIR ?
|
|
|||||
Регистрация: Jun 2011
Сообщений: 212
|
Исходя из того, что попытка подгрузить изображение - это проба узнать рабоатет ли air с сетью (и больше ничего), то:
1. Не пользовался airxmail, но неужели там нет встроенных средств проверки доступности сети? 2. Если таки нет, то package { import flash.display.MovieClip; import flash.events.MouseEvent; import flash.events.Event; import flash.net.URLLoader; import flash.net.URLRequest; import flash.events.IOErrorEvent; public class main extends MovieClip{ var loader:URLLoader=new URLLoader(); public function main(){ stage.addEventListener(MouseEvent.CLICK,go); } private function go(e:MouseEvent){ var r:URLRequest=new URLRequest("http://bezfa.narod.ru/r.jpg"); loader.addEventListener(Event.COMPLETE,go1); loader.addEventListener(IOErrorEvent.IO_ERROR,io); loader.load(r); } private function go1(e:Event){ trace("all right"); } private function io(e:IOErrorEvent){ trace("all bad: ", e.text); } } } |
|
|||||
Регистрация: May 2010
Сообщений: 43
|
Все время выдает all bad: Error #2032
Что то я вообще запутался, AIR работает что только на локальном компьютере и выхода в сеть не имеет? Последний раз редактировалось flyberok; 21.11.2011 в 22:15. |
|
|||||
Регистрация: Jun 2011
Сообщений: 212
|
У меня выдает "all right"
Добавлено через 36 секунд попроуйте открыть в браузере http://bezfa.narod.ru/r.jpg |
|
|||||
Регистрация: May 2010
Сообщений: 43
|
В браузере все ок.
У меня тоже все "all right" пока fla файл является actionscript 3.0 А как к air файлу прикручиваю main.as уже не работает. p.s. Что то я уже запутался, В папку к air закинул этот новый swf и все работает... переустановлю ка я себе flash. Добавлено через 15 часов 43 минуты Переустановил flash... Не помогло, изматал вчера кучу нервов. Думаю, да не может в AIR быть столько проблем с поддержкой сети... И меня озарило, вырубил касперского и все ОК!!! Тему закрываем )) Последний раз редактировалось flyberok; 21.11.2011 в 22:45. |
Часовой пояс GMT +4, время: 03:54. |
|
« Предыдущая тема | Следующая тема » |
|
|