Возможности AS3 API, о которых не все знают

После прочтения поста от TheRabbit  я решил развить тему.

AS3 API не стоит на месте, постоянно появляются новые возможности. Но, почему-то, не все разработчики о них знают. Здесь я перечислю самые, на мой взгляд, важные из этих возможностей:

Чтобы быть в курсе новых возможностей, просто следите за официальным описанием релизов.

 

Опубликовано 22.02.2014 в 18:17 · Автор iLLuzor · Ссылка · Написать комментарий
Рубрики: air, flash · Теги: , ,

Сборка ane с помошью ant

В своём уроке по созданию Native Extension я давал довольно замороченный способ сборки ane файла,  который состоял из следующих шагов:

Представьте, сколько манипуляций приходилось делать чтобы протестировать любые изменения кода. Это неимоверно неудобно.

Относительно недавно я открыл для себя инструмент под названием Apache Ant и жалею, что не обратил на него внимания раньше. Он позволяет проделать все эти шаги в один клик. Если кратко, то ant — это утилита для автоматизации компиляции и сопутствующих процессов(работа с файлами, изменения кода и т.д.). Сборочный конфиг представляет собой обычный xml. Для его запуска нужно выполнить команду ant -f build.xml. Сам по себе ant довольно прост и при желании его можно освоить за один вечер, хотя и придётся подглядывать в документацию.

На примере расширения Android-Notification-Extension-ANE я кратко расскажу, как это работает.

Читать полностью »

Опубликовано 07.12.2013 в 23:18 · Автор iLLuzor · Ссылка · 5 комментариев
Рубрики: air · Теги: , , , ,

Leap Motion

Leap MotionПару месяцев назад ко мне приехала заветная коробочка. Ещё до её приезда у меня была масса идей, что с ней делать, но после просмотра демок и попыток что-то написать самому, почти все пришлось отбросить. Работало оно ужасно. По началу я думал, что софт ещё очень сырой и нужно ждать, когда допилят, но с каждым обновлением прошивки девайс тупил всё больше. Я даже написал в техподдержку, где мне сказали, что это аппаратный баг и выслали новый leap. К его приезду вышла версия софта под номером 0.7.9. При запуске программа стала ругаться на то, что девайсу мешает слишком яркий свет, хотя на самом деле, свет у меня довольно тусклый, но практически над столом висит люстра. После выключения света всё заработало отлично — и новый девайс, и тот, который приехал раньше. Сомнительное удовольствие: выключать свет и программировать в темноте. Собственно в темноте я написал несколько демок,  некоторые из них заснял (видео под катом).

В целом моё мнение следующее: в том виде, в котором leap motion сейчас, он подходит только для «поиграться». Не думаю, что кто-то будет использовать его в повседневной жизни постоянно. Возможно, было б удобно, если бы он был встроен в клавиатуру и никак не выдавал бы себя физически. В таком случае будет удобно комбинировать его с клавиатурой и мышью в повседневной работе

Есть несколько критичных минусов:

Читать полностью »

Опубликовано 01.06.2013 в 15:58 · Автор iLLuzor · Ссылка · Один комментарий
Рубрики: flash, другое · Теги: ,

Livecoding with COLT

colticonСовсем недавно команда под предводительством Евгения Потапенко показала миру инструмент для лайвкодинга под названием Code Orchestra Livecoding Tool (COLT).  Штука получилась просто волшебная, лично я от неё в восторге. Почитать можно на официальном сайте. Пока что, есть некоторые баги, но они очень оперативно исправляются. Ещё не все возможности, которые были заявлены, реализованы. Они появятся чуть позже.

Также объявлен конкурс, в котором можно выиграть одну из пятидесяти лицензий на программу. Вот видео, которое отлично демонстрирует возможности COLT (не знаю, конкурсное оно или нет):

 

И моя скромная работа.

Опубликовано 18.05.2013 в 01:37 · Автор iLLuzor · Ссылка · Написать комментарий
Рубрики: flash, программирование · Теги: ,

Native extensions

Некоторое время назад я написал четыре расширения для android. В первую очередь писал, чтобы научиться. В итоге захотелось создать целую серию разных расширений, но погуглив, понял, что их можно найти великое множество под самые разные цели. Многие из них с открытым кодом. Если уж писать свои расширения, то под специфические задачи, под которые готовых расширений нет или есть, но они устраивают не полностью.

Я совершенно не ожидал, что мои расширения кто-то найдёт на гитхабе, и кого-то они даже заинтересуют, так как аналогов полно. Но на почту я получил несколько писем от разных людей с вопросами и благодарностями.  В общем, делюсь.

Android Communication Extension. Возможности:

Android File Extension. Возможности:

Android Notification Extension. Возможности:

Android Sharing Extension. Возможности:

Инструкции и примеры использования есть по ссылкам.

 

Опубликовано 20.04.2013 в 15:24 · Автор iLLuzor · Ссылка · Написать комментарий
Рубрики: air, mobile · Теги: , ,

Flash platform update

Flash Player обновился до версии 11.6, а AIR и соответственно AIR SDK до версии 3.6.

Вроде, ничего необычного, но одна интересная штука есть. На странице загрузки AIR SDK написано «Adobe AIR SDK & Compiler».

Без проблем, конечно же, не обошлось. После распаковки AIR SDK в папку Flex SDK при компиляции проекта компилятор ругался на один из файлов спарка. При чём тут он, совершенно не понятно. Причём ругался только один раз: первый раз ругается, второй — компилируется без проблем. Стоило чуть изменить код — снова ругается. Помню, раньше была подобная проблема и решаласть откатом с JRE 7 на JRE 6. В данном случае я испробовал несколько версий JRE, проблема не исчезла. Я работаю во FlashDevelop и дело в том, что mxmlc всё ещё остался у власти.

Раз старый компилятор тупит, обратимся к новому. Немного гугления и инструкция по активации ASC2 найдена. Нужно в каталоге Flash Develop заменить файл Tools\fdbuild\fdbuild.exe на пропатченную версию, предварительно сделав резервную копию. Наверняка в новых версиях FD сделают удобный способ переключения между компиляторами.  После этого в консоли мы увидим mxmlc-cli.jar вместо mxmlc.jar. ASC2 более строг, чем mxmlc. Перед использованием нужно внимательно ознакомиться с его особенностями. Также стоит взглянуть на обзорную статью от Thibault Imbert.

Некоторые старые проекты с новым компилятором скомпилировались без проблем. Те, которые компилироваться отказываются, можно довольно быстро вернуть к жизни изменениями кода, следуя описанию компилятора и описаниям ошибок.

Из главных особенностей ASC2 можно выделить оптимизацию кода, сжатие LZMA, Inline функции, и конечно же компиляция с ключём -advanced-telemetry для Adobe Scout. В общем, штука хорошая.

Опубликовано 13.02.2013 в 20:44 · Автор iLLuzor · Ссылка · 7 комментариев
Рубрики: flash · Теги: , ,

Android AIR notification ane

Залил на github пример Native Extension для Android под названием Notification Extension.
Расширение позволяет отображать нативные Alert и Toast.

 

 

 

 

 

 

 

 

 

 

 

 

https://github.com/illuzor/NotificationExtention

Вот подробный урок, ради которого расширение и писалось.

 

Опубликовано 05.11.2012 в 20:44 · Автор iLLuzor · Ссылка · Написать комментарий
Рубрики: mobile · Теги: , , , ,

DialogManager — библиотека для отображения диалоговых окон

Хочу поделиться небольшой библиотекой собственного производства.

Она представляет собой менеджер диалоговых окон.

Особенности:

Читать полностью »

Опубликовано 26.08.2012 в 21:46 · Автор iLLuzor · Ссылка · 3 комментариев
Рубрики: программирование · Теги: , ,

Удобный доступ к методам класса загруженного swf

Иногда работа с классами из загруженного .swf файла бывает не очень удобной из-за того, что загружающий .swf не знает классов загружаемого.

Читать полностью »

Опубликовано 06.08.2012 в 17:02 · Автор iLLuzor · Ссылка · 5 комментариев
Рубрики: программирование · Теги: 

Полезные инструменты для as3 разработчика

Чем больше я работаю с as3, тем больше различных вспомогательных инструментов встречаю. Странно, но некоторые разработчики о них даже не догадываются.

Это мини обзор таких инструментов.

 


Читать полностью »

Впечатления от Flash CS6

На сайте Adobe уже можно скачать новый Flash Professoinal.

Первое, что бросается в глаза, это конечно же перерисованная графика. Иконка, сплешскрин, окно приветствия — всё выглядит очень круто. Но это мелочи. Что порадовало — это общая скорость работы. Запускается программа меньше, чем за 5 секунд. И если cs5/cs5.5 при запуске разделялся на два окна, то в cs6 оно одно.

Немного изменился принцип сворачивания/разворачивания панелей. Если раньше они работали по клику на всю полосу, на которой находятся заголовки, то теперь клик работает только на области самого заголовка. Не очень удобно.

Одна из интересных фишек — генерация карт спрайтов. Жмём по мувиклипу в библиотеке правой кнопкой, выбираем Generate Sprite Sheet, экспортируем и получаем изображение и xml к нему. Достойная вещь. Хотя, лично я предпочитаю для этих целей TexturePacker.

Конечно же, теперь FlashPlayer 11.2 и AIR 3.2 поддерживаются из коробки.

Опять новая версия .fla (Flash CS6 Document), минимум можно сохранить под CS5. Очередная головная боль для пользователей более ранних версий.

А вот экспорт в html5  я почему-то не нашёл.

На этом, похоже, и всё. Изменений не много. Самое значительное — скорость работы.

Опубликовано 07.05.2012 в 16:33 · Автор iLLuzor · Ссылка · 2 комментариев
Рубрики: flash · Теги: ,

InGit

Создал сегодня свой первый публичный репозиторий.

https://github.com/illuzor/Simple-Android-Game

Там живёт исходник примера простой игры для Android на AIR Mobile. Возможно, пригодится тем, кто раньше не работал с мобильным AIR и хочет посмотреть, что это вообще такое.

Игра с акселерометром, локальным хранилищем, вибрацией(NativeExtention).

Несколько скриншотов:

 

Подробный урок:

Часть 1

Часть 2

Опубликовано 31.03.2012 в 23:32 · Автор iLLuzor · Ссылка · 8 комментариев
Рубрики: mobile · Теги: , , , ,

UDK, Scaleform, AS3

Изучаю интересную штуку под названием Scaleform под Epic UDK.

Если кратко, то это система для создания интерфейсов на флеше для крупных игровых движков(Unreal Engine 3, Cry Engine и другие).

Вот что у меня получается:

 

 

И пример того, что можно сделать:

 

 

Опубликовано 31.03.2012 в 13:00 · Автор iLLuzor · Ссылка · 3 комментариев
Рубрики: другое · Теги: , ,

Мобильные AIR приложения во FlashDevelop

Во FlashDevelop  4 очень просто работать с мобильными AIR приложениями для IOS/Android. Это направление является для его разработчиков одним из наиболее приоритетных и активно развивается.

Для начала нам нужно создать новый проект AIR Mobile AS3 App или AIR Mobile Flex App. После создания проекта наблюдаем следующую картину:

По порядку:

Папка bat содержит несколько пакетных файлов:

В папку bin помещается скомпилированный swf файл.
В папке sert должны лежать сертификаты.
Папка icons содержит наборы иконок.
Две стандартные папки lib и src. Нужны для  библиотек и классов соответственно.
Корневая папка:
  • Стандартный для AIR приложений application.xml с различными параметрами приложения.
  • PackageApp.bat позволяет выбрать платформу и тип упаковки приложения. После выбора упаковывает. Появляется папка dist c apk или ipa.
  • Run.bat заливает приложение на мобильное устройство и запускает его там.
  • Два файла AIR_Android_readme.txt и AIR_iOS_readme.txt с инструкциями.
К сожалению, IOS устройства для теста у меня под рукой нет, поэтому расскажу, как работать с приложением на примере Android. Но не думаю, что у ios в этом плане есть коренные различия.
Сначала нам нужно сгенерировать сертификат. Запускаем CreateCertificate.bat и сертификат появляется в папке sert. Также все параметры, связанные с сертификатом автоматически прописываются в конфигах. Если говорить о подготовке, то это всё. Можно писать код и тестировать.
Для тестирования на мобильном устройстве понадобится кабель для подключения к компьютеру и драйвер для устройства, который можно найти по ссылке.
Не забудьте установить Adobe AIR на устройство. Также на устройстве необходимо включить USB Debug Mode.
И последнее — в файле Run.bat меняем строку goto desktop на goto android-debug.
Тестирование происходит следующим образом:
  1. сначала нужно скомпилировать флешку — project/build project, F8 или нажмите на кнопку в виде шестерёнки.
  2. запускаем PackageApp.bat выбираем пункт [2] debug    (apk-debug), ждём, пока соберётся apk.
  3. в основном меню выбираем Debug/Start Remote Session.
  4. запускаем Run.bat который зальёт приложение на девайс и запустит его там.
Пока приложение заливается, дебаггер ждёт соединения. Как только приложение запущено на устройстве, можно пользоваться дебаггером и ловить трейсы прям с устройства. Обратите внимание на то, что соединению может помешать фаервол.  Профайлер, к сожалению, не работает или просто я не смог его запустить.
Есть второй способ и он намного проще: просто выбираем Project/Test Project или F5 или нажимаем кнопку в виде «play». Пункты 1-4 выполнятся автоматически. Это очень удобно.

 

Таким образом можно разрабатывать приложения одновременно под Android и IOS, конечно с учётом особенностей каждой ос. Также малыми потерями можно портировать ваши Flash/Flex приложения на мобильные устройства.

Опубликовано 04.03.2012 в 17:08 · Автор iLLuzor · Ссылка · 3 комментариев
Рубрики: mobile · Теги: , ,

Порядок

Тема, конечно, очень много раз поднималась, но многие всё равно пропускают её мимо ушей, глаз и других органов чувств.

Мне становится очень грустно, когда я открываю PSD файл с 500+ слоёв со стандартными именами «Слой Х» (да, именно на русском) без единой папки. Или когда смотрю исходники и вижу в коде переменные вида «dr, tm, b, var666». Бывает, что присылают исходник —  после распаковки зипа наблюдаю кучу папок с неинформативными названиями и с файлами, хаотично разбросанными по этим папкам.
Как прикажете в этом разбираться? Я понимаю, что большинству людей просто лень, но как вы сами то в этом ориентируетесь? Мне иногда сразу не разобраться даже в собственных исходниках двухмесячной давности.

Статей на данную тему море и они легко гуглятся. Несколько небольших советов от меня начинающим(а может и не только им):

Опубликовано 02.12.2011 в 20:40 · Автор iLLuzor · Ссылка · Один комментарий
Рубрики: рассуждения · Теги: , ,