![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Mar 2011
Сообщений: 4
|
У меня приложение на Adobe Air (Adobe Flash CS4, Adobe AIR 1.1, ActionScript 3.0). Я сделал Publish Air, установил у себя. Работает. Попробовал на других компьютерах (установил с http://get.adobe.com/ru/air/ платформу, запустил свой Main.air, запустил приложение) и обнаружил следующую ошибку.
Показывается окно приложения с кнопкой, к которой привязано следующее событие. При щелчке на кнопку(btnDialogCreate) ничего не происходит. Ни ошибки, ни диалога browseForDirectory: public class Main extends MovieClip { private var flag=true; private var directory:File = File.desktopDirectory; private var file:File = File.desktopDirectory; public function Main():void { this.stop(); var file:File = File.applicationDirectory.resolvePath("pattern.xml"); var fileStream = new FileStream(); fileStream.open(file, FileMode.READ); var str:String = fileStream.readUTFBytes(fileStream.bytesAvailable); str=str.substr(1); var panoramaPattern=new XML(str); fileStream.close(); this.addEventListener(Event.ENTER_FRAME, Bind); } public function Bind(e) { if(flag){ btnDialogCreate.addEventListener(MouseEvent.CLICK,temp); flag=false; } } private function temp(e) { var directory:File=File.documentsDirectory; try{ directory.browseForDirectory("Выберите директорию проекта."); } catch(e:Error){} } } Как показало комментирование кусочков кода и проверка, проблема в строке Что с ней не так? Почему она вызывает ошибку? Файл pattern.xml я в инсталлятор включил, он устанавливается вместе с приложением. И еще один вопрос. Можно как-нибудь сделать, чтобы установленное приложение Abode AIR выдавало ошибки, а не молчало? |
|
|||||
|
Banned
[+1 05.11.11]
[+1 09.08.11] Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
|
Я не могу понять, зачем делать вот это:
var fileStream = new FileStream(); fileStream.open(file, FileMode.READ); var str:String = fileStream.readUTFBytes(fileStream.bytesAvailable); Это вообще бессмыленно. Для загрузки XML лучше использовать URLLoader. FileStream можно использовать для записи XML на диск, но для загрузки это лишние танцы с бубном. Цитата:
п.с. Да и вообще, сейчас в моде AIR 2.6 ![]() Последний раз редактировалось goodguy; 02.04.2011 в 19:03. |
|
|||||
|
Регистрация: Mar 2011
Сообщений: 4
|
Нашел проблему!
1. Я исправил кодировку текстового файла на ANSI. И отрезать стало ничего не надо. 2. Поправил загрузку XML файла на код отсюда - http://help.adobe.com/en_US/AIR/1.5/...de46-7dc5.html. Как-то оно красивее выглядит. Теперь работает и открывается. 2goodguy Я не знаю, у меня в CS4 в списке только AIR 1.1. был Для AIR 2.6, наверное, CS5 нужен? |
![]() |
![]() |
Часовой пояс GMT +4, время: 17:46. |
|
|
« Предыдущая тема | Следующая тема » |
|
|