14.12.11

Наше участие в Flash GAMM! Kyiv 2011

В эти выходные прошла конференция разработчиков и издателей flash игр Flash GAMM. Команда нашей игровой лаборатории приняла участие в конференции и мы с Дмитрием Малковым прочитали совместный доклад о деятельности лаборатории.
Для заинтересовавшихся опубликую здесь презентацию, а чуть позже напишу на основе нее развернутый пост про лабораторию.

Either scripts and active content are not permitted to run or Adobe Flash Player version 10.2.0 or greater is not installed.

Get Adobe Flash Player

кликните и нажмите пробел
А теперь немного о конференции и впечатления:

Что запомнилось больше всего:

  • Speed Game Dating
  • Наш доклад :)
  • Доклады Ли Бримелоу и Тома Крха 


6.12.11

UI компоненты Mobile Flex 4.6

Недавно я участвовал в сравнении кросплатформенных мобильных SDK.
Исследование сузилось до сравнения PhioneGap и AIR. Одним из главных пунктов сравнения было наличие большого количества "нативных" UI компонентов. Хотелось бы рассказать о том что AIR, а именно Flex предлагает на эту тему.

2.7.11

Запускаем flash приложение на iOS извне

Как известно, для запуска прилжения на iOS извне используются URL-схемы.
Самый известный пример - url типа tel://xxx, mailto://xxx, http://xxx
Достаточно выполнить переход по url такого вида и iOS переключится на приложение, где определена эта схема, а оно само обработает строку xxx.

Пользователям XCode хорошо известно как определить схему для своего приложения. Надо  всего лишь добавить пару ключей в Info.plist. Как же быть тем, кто разрабатывает мобильные приложения на Flash/Flex?

7.6.11

Решение проблемы 103 в Flash CS5.5

Недавно я писал про проблему, возникающую при публикации iOS приложений в Flash Pro CS5.5: error 103: application.version is an unexpected element/attribute" error message.
Недавно на форуме Adobe товарищ Tareq AlJaber опубликовал обходной путь, который дает возможность собрать приложение. Это пока не финальное решение проблемы, но дfет результат.

30.5.11

2 проблемы Flash CS5.5

Вот я и начал разбираться с Adobe Creative Suite 5.5.
Сегодня опишу две большие проблемы, возникающие при публикации из Flash Pro CS5.5 приложений на iOS:
  • error 103: application.version is an unexpected element/attribute" error message
  • Compilation failed while executing: strip 


26.5.11

Впечатления от CS 5 Evolution

Побывал вчера на мероприятии Adobe CS5 Evolution, посвященном запуску минорной версии Creative Suite 5.5.
 

Перенос iOS приложения на чужой iOS Simulator

Иногда возникает задача продемонстрировать свое iOS приложения кому-то без девайса под рукой. В своей практике я сталкивался с такими вопросами от заказчика: как нам посмотреть ваше приложение, если у нас нет iPad'а, но зато есть компьютер с Mac OS.

Выход может быть только такой: становить на компьютер комплект разработчика с iOS SDK (если нет доступа к iOS Developer Program, можно скачать XCode в App Store для Mac, стоит 4.99$) и запустить приложение в симуляторе.

29.4.11

Скрипт для сбоки flash приложений под iOS и Android

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

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

Итак, приступим. Для сборки нам потребуется:
Всё распаковываем и устанавливаем как надо.
Начнем с описания дескрипторов для приложений:

3.4.11

Debtors - crossplatform application on Flex Hero SDK with AIR2.6

Записал видео про наше приложение Debtors - менеджер должников на планшетные ПК.
Позволяет хранить список людей, которые вам должны, создавать  закрывать долги.
Долги бывают разных типов, приложение умело суммирует однотипные для того чтобы понять кто самый должник.




Приложение сделано на Flex Hero SDK и собрано с AIR 2.6.
Работает на трех платформах: iOS 4.2+ (iPad only), Android 2.2+, Blackberry Tablet OS.


1.4.11

Посетил «Обзор методологий ведения проектов. Их применение в стартапах»

На этой неделе был на мастер классе Сергея Боронина - «Обзор методологий ведения проектов. Их применение в стартапах»

Сергей Боронин - интересный товарищ. Занимается организацией IT подразделений и запуском консультированием заказчиков и руководителей IT проектов. Подробней о нем можно узнать тут: http://www.it-hypnosis.com/resume/


Мастер-класс хоть и про сатрапы, но не про гаражные, а про такие, зрелые сатрапы, когда есть идеи и деньги и надо найти команду за эти деньги.
Собственно вся суть мастер-класса - найти методологию по которой удобней в такой ситуации работать с командой, минимизировать риски.
Минимизация рисков - пожалуй, главное.
Речь шла в основном про "зрелые методологии".
Четно говоря, никогда раньше такого термина не встречал да и сейчас его употребление нахожу поисковиком с трудом.
Одним словом - это не гибкие методологии.
Важно отметить, что это давно уже не Водопад.
Все они уже давно базируются на итеративной схеме - горький опыт показал что надо быть более чувствительными к изменениям.
Главный инструмент большинства зрелых методологий - UML. Очень большой упор делается на изначальное планирование и проектирование.
Сильнее всего зависимость от инструмента UML проявляется в RUP.
RUP - тяжелый и дорогой, хорош на больших проектах в больших конторах. Разработан ребятами из IBM и там в основном хорошо и работает.

Самой хорошо описанной методологией является PMBOK. Очень рекомендую всем про нее читать, чтобы понимать какие бывают хорошие не agile методологии. Детальное описание можно скачать тут.
Очень смутило что основным доводом Сергея в пользу этой методологии было, что есть описание на русском языке.

Самой удобной для сатрапов считается PRINCE2. Считается что более понятна для венчуров и чувствительна к бизнесу. Почему - так и не понял, можно поразбираться если будет интересно.
Позже нашел статью интересную (с переводом на русский) про сравнений PRINCE2 и PMBOK.
Рекомендую ознакомиться, понять больше про обе методологии сразу.

Ближе всех к Agile находится разработанная мелкомягкими методология MSF. Базируется на небольших командах с горизонтальным взаимодействиям.

Что касается Agile методологий - оказывается заказчики сильно их боятся.
Странно, первый же принцип Agile как раз про их счастье.
Очень популярно мнение что Agile, а особенно Scrum - это инструмент выжимание денег из заказчика. Основные пункты аргументации:
  • команда оставляет открытым срок работ 
  • отсутствует(?) проектирование, поэтому быстрый старт и потом внезапный спад 
  • сложно контролировать команду (непонятные ритуалы, команда сама решает что делать) 
Создается впечатление что в России на agile, как и на многих других хороших вещах, недобросовестные люди сделали деньги, породив неприязнь к гибким методологиям у заказчиков. И это печально.

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

Как бы то ни было, спасибо Сергею за интересный мастер-класс! 

1.3.11

Проблемный MobileIconItemRenderer

В продолжение темы про разработку для Blackberry Playbook напишу про то что заставило меня больше всего позлиться.
Те из Вас, кто знаком с Flex 4.5 (Hero), наверняка знают о том что для мобильных платформ было сделано специально несколько клевых классов.

Сегодня я коснусь одного из них - MobileIconItemRenderer 

В прошлом посте я упоминал стать Кристофа  Коэнрится Creating mobile apps for Android using Flash Builder "Burrito" and Flex SDK "Hero" 
В ней описывался процесс создания простого приложения на AIR сразу под PlayBook и Android.
В приложении выводился список людей.

Я решил повторить этот  опыт, обогатив список фотографиями.
Запустив сове приложение на симуляторах - Android и Playbook я заметил досадную разницу, которую можно пронаблюдать не скриншотах:


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

В недрах класса MobileIconItemRenderer я узнал, что обрезанием занимается по его просьбе MobileTextField.
Ладно, раз так, можно унаследоваться унаследоваться и создать класс, не выполняющий обрезания.
Как оказалось, не так уж это и просто.
К сожалению, автор класса очень часто использовал private и очень редко protected.
Так что пришлось немного попотеть.

Зато, результат на лицо:
А вот и класс, который я написал и использовал вместо MobileIconItemRenderer: скачаь тут
В чем именно суть проблемы, мне так и не удалось узнать. Так что я просто зарегистрировал баг.


25.2.11

Делаем AIR приложения для Blackberry Playbook

Все-таки пока не забил... :)

Расскажу о том как разрабатывать приложения для планшета BlackBerry - PlayBook

Напоминаю, о том что PlayBook такое:
http://us.blackberry.com/playbook-tablet/
На сайте Blackberry характеристик немного, так что выписываю из вебкаста что узнал:

  • Процессор: 1 GHz dual core 
  • Оперативная память: 1Gb 
  • Камеры:  5 MP основная и 3 MP фронтальная 
  • Экран: 7" LCD, 1024x600 px 
  • WiFi 802.11 a/b/g/n 
  • порты microUSB и microHDMI 
  • Вес: 400 г. 
  • Браузер WebKit 
  • Поддержка Flash Player 10.1 и AIR 2.5 
  • 1080p HD видео: H.264, MPEG4, WMV - всё можно на HDMI выход 
  • Технологии/языки для разработки своих ПО:  
    •   Adobe AIR 
    •   Java 
    •   C++ 
Про две последних технологии пока ничего не слышал с декабря.
Сейчас на сайте playbook доступны только два SDK:

Сегодня я расскажу про SDK для AIR.
О WebWorks к сожалению знаю мало, может еще к этому вернусь.

Инструменты, которые понадобятся при разработке приложений для PlayBook при помощи AIR SDK:

Все шаги по установке и настройке описаны здесь: http://us.blackberry.com/developers/tablet/adobe.jsp
Если в кратце:
  • качаем и ставим Flash Builder, если нету. отдельно описаны шаги для 4 и Burrito. Я поставил Burrito и далее не пожалел об этом, есть удобные моменты. 
  • качаем ставим SDK при помощи инсталлятора - никаких проблем  
  • качаем и устанавливаем VMWare - на ней будет запускаться симулятор Tablet OS 
  • качаем дистрибутив Tablet OS, он в виде iso образа. 
  • Устанавливаем на VMWare. Обязательно настроить виртуальную машину как в описании - 1024 MHz, 1Gb RAM, 3D ускорение и 8GB диска. В противном случае будет ругаться и не поставится. Также непростой момент в нужный момент подтвердить согласие с лицензией - мне пришлось долго мотать консоль вниз передуем как нажать "y". 

Вот так оно выглядит:



Очень интересно видеть тут маленький курсор. Нельзя забывать что человек будет потом пальцами тыкать, и судя по размерам устройства, весьма большими.
Как видно, в симуляторе изначально установлен браузер.

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


Теперь же запускаем Flash Builder. Тем кто уже видел Burrito известно как создавать Mobile Application. При создании проекта вы увидите такое окно:



Оно очень знакомо тем, кто уже писал приложения на AIR под Android или смотрел видео на Adobe TV из этой серии: http://tv.adobe.com/watch/adc-presents/flex-mobile-part-1-beginning-a-mobile-application/
Как видно, мы можем создать приложение как под любую из платформ (Android, Tablet OS) поотдельности или для обоих вместе. Для Flex приложения далее процесс не отличается от процесса разработки приложения под Android.
Для ActionScript приложения есть возможность использовать классы неймспейса qnx.*
Там много всего интересно, оставлю читателю возможность поисследовать их самостоятельно :)
Что будет с приложением, использующим эти классы на Android, я пока не проверял, но скорее всего ничего особенного - в основном это визуальные компоненты в стиле интерфейса PlayBook.

Для запуска и отладки приложения на симуляторе не забудьте включить Development mode и настроить конфигурацию в Flash Builder (подробно описано тут: http://docs.blackberry.com/en/developers/deliverables/25068/Debug_your_app_FB45_1397436_11.jsp).

Вот пока что все что я хотел изложить.

Позже напишу о том как подписывать приложения и публиковать в BlackBerry App World (аналог App Store).

Что делать теперь?
Рекомендую посмотреть статью Christophe Coenraets:
Creating mobile apps for Android using Flash Builder "Burrito" and Flex SDK "Hero"
И можно посмотреть хитро спрятанный на сайте Blackberry Creating your first application  

Пролог

Всем привет!
Начинаю свой блог, в связи с чем расскажу немного о себе.

Меня зовут Макс Павлов, я работаю в компании Flexis, в последнее время занимаю должность руководителя проектов. Занимаюсь в основном приложениями на iPad.
В сферу моих обязанностей, но к счастью во многом и интересов, также входит изучение различных более или менее новых технологий в области насыщенного веба.
В этом году компания серьезно занялась рынком приложений для мобильных устройств, в том числе планшетов.
Хожу на встречи сообществ Apple разработчиков и Adobe Flash разработчиков.

Поэтому скорее всего ближайшие несколько постов будут посвящены чему-то вроде iOS, Android и может быть BlackBerry.

Еще я учусь в Московском физико-техническом институте, получаю знания по специальности Синергетика на базе ИПМ им. М.В. Келдыша РАН, что тоже наверняка найдет отражение в моем блоге.
Некоторое свободное время посвящаю кормлению голодающих студентов в студгородке МФТИ.

Если не напишу нормального поста в течении недели, значит я забил на эту идею :)