InGit

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

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

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

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

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

 

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

Часть 1

Часть 2

UDK, Scaleform, AS3

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

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

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

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

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

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

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

По порядку:

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

  • CreateCertificate.bat нужен для генерации self-signed сертификата для Android. Без этого сертификата не получится собрать apk. С сертификатами для IOS всё не так просто.
  • InstallAirRuntime.bat устанавливает AIR runtime на Android устройство из %FLEX_SDK%\runtimes\air\android\device\runtime.apk. Лучше самостоятельно установить последнюю версию из AndroidMarket.
  • Packager.bat упаковывает флешку в apk(android) или ipa(ios) в зависимости от платформы, под которую пишется приложение.
  • SetupApplication.bat  содержит различные параметры приложения (пути к сертификатам, пароли от них, название приложения и т.п.)
  • SetupSDK.bat содержит путь к FlexSDK. Определяется автоматически, если не определился, нужно прописать вручную. И также содержит путь к AndroidSDK. На самом деле из него нужны только три файла: adb.exe, AdbWinApi.dll и AdbWinUsbApi.dll. Причём они уже содержатся в дистрибутиве FlashDevelop и путь к ним прописывается также автоматически.
В папку 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. Также все параметры, связанные с сертификатом автоматически прописываются в конфигах. Если говорить о подготовке, то это всё. Можно писать код и тестировать.
Для тестирования на мобильном устройстве понадобится кабель для подключения к компьютеру и ADB драйвер для устройства, который можно найти по ссылке.
Не забудьте установить 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 приложения на мобильные устройства.