PDA

Просмотр полной версии : Вопросы по SDK и компиляции


TommyLee
27.09.2009, 16:30
Как понял процесс компиляции: байт-код--контейнер swf.
1. Какая софтина используется для каждого шага?
2. Зачем для SDK нужна JRE? В ней экзешники на яве крутятся что ли?
3. Компиляция для air отличается от компиляции для web (другой линковщик, компилер..)?

з.ы. У Flex Develop написано "Prerequisites "Flash Player 9 ActiveX runtime". Это флеш плеер? почему 9ка или это устаревшая версия?

wvxvw
27.09.2009, 17:12
ASC, MXMLC и COMPC - это компиляторы которые есть в СДК. Это явовские исполняемые файлы. ASC - компилирует непосредственно AS3, MXMLC - герерит SWF компилируя туда ресурсы, метаданные, перерабатывает MXML если нужно и т.д. COMPC - почти то же самое, что MXMLC только генерит SWC (библиотеки с уже скомпилированым байткодом + ресурсы + стили и т.д.).
Плеер минимально нужен 9-й.
Для компиляции AIR используется все тот же MXMLC и потом пакуется ADT. Разница в компиляции - для AIR используются дополнительные библиотеки / классы. Т.е. можно скомпилировать SWF для AIR, просто плеер ее проиграть не сможет если вы используете встроеные классы AIR.
Т.е. билт-ин классы не компилируются в результирующую SWF, а вместо них туда кладется ссылка. Когда плеер или AIR начинает проигрывать SWF он будет искать эту ссылку в наборе классов, которые уже у него есть. Соответственно, "аировских" классов в плеере не окажется.

TommyLee
27.09.2009, 17:25
wvxvw, спасибо. вопросы решены.
Не использовать air классы в десктопном приложении не получится?

wvxvw
27.09.2009, 17:39
Почему же - вполне себе получится. Только толку от такого десктопного приложения мало будет :)

TommyLee
27.09.2009, 17:43
Вы про доступ к ОС? Но он же вроде и во flex есть.. или тут не только доступ к устройствам и файловой системе?

Добавлено через 1 час 12 минут
+минимальные переделки: flex-->air?

wvxvw
28.09.2009, 02:08
Что есть в AIR и чего нет в плеере: работа с буфером обмена, возможность создать новое системное окно, лучше работа с файлами, возможность нормально отображать HTML и еще всякие фишки, так все сразу не вспомню.
Флекс - это фреймворк + компиляторы, а AIR - это рантайм. Как бы нет никакой особенной связи между ними. Т.е. совсем не обязательно использовать флекс для того, чтобы получилось что-то для AIR.

TommyLee
28.09.2009, 10:25
Понял. Последний вопрос: писать можно из одной IDE (Builder Develop), только при компиляции подключать соответствующий sdk, или для air нужна другая IDE?

wvxvw
28.09.2009, 14:23
Из любой. Вот FlashLite например из ФБ не получится, а AIR - по сути тот же AS3.

TommyLee
28.09.2009, 16:15
Спасибо.
Тему закрыл.