среда, мая 04, 2011

Блог Adobe про выходы версий Flash Player

Случайно нашел блог Adobe, в котором они стали постить про каждую версию плеера начиная с февраля 2011 года - http://blogs.adobe.com/flashruntimereleases/

среда, апреля 13, 2011

Разработчик сервиса Яндекс.Панорамы (ActionScript3, Flex)

На Яндекс.Картах есть сервис Панорамы, который помогает людям путешествовать по миру и смотреть разные, знакомые и незнакомые, города, не выходя из дома.

В команду сервиса нужен хороший flash/flex-разработчик. Вам предстоит развивать продукт, которым с удовольствием пользуются миллионы людей. Развивать - значит принимать участие в обсуждениях новинок, работать над улучшением архитектуры, решать сложные задачи, использовать самые новые возможности платформы.

Нам нужен человек, который отлично знает ActionScript 3, Flex и AIR, использовал в работе SVN или другие VCS, интересуется различными подходами к разработке, новыми возможностями в Flash Platform, и не боится изучать новое (возможно, кардинально новое).

Если вы при этом еще и разбираетесь в различных 3D-движках, знаете не понаслышке о JavaScript, HTML, CSS и SQL - это просто прекрасно. И не менее прекрасно, если у вас есть опыт использования различных архитектурных фреймворков, VCS, IDE, знакомство с разными OC.

Коротко об условиях:
  • Зарплата от 90 до 120 тыс. рублей (белая, до вычета налогов, изменяется по результатам работы), премии за важные запуски.
  • Медстраховка от одной из ведущих страховых компаний.
  • Свободный график (ну почти).
  • Оплачиваемый отпуск - 28 дней.
  • Десктоп или ноутбук (в том числе Mac) на выбор.
  • Программа мобилизации: компания выдает вам смартфон или планшет по вашему выбору (iPhone4 или iPad в том числе) и оплачивает безлимитный интернет.
  • Офис в центре Москвы - недалеко от станции метро Парк Культуры.
  • Большая техническая библиотека и возможность покупать книжки за счет компании.
  • Много умных, интересных людей в шаговой доступности.
  • Минимум бюрократии и прочей псевдокорпоративной ерунды.
Если, прочитав все это, вы поняли, что это ваше - пишите нам: http://company.yandex.ru/job/vacancies/interface_developer.xml

пятница, ноября 12, 2010

Баг при ресайзе флеш-приложений в хроме под маком

Обнаружился неприятный баг - если вставлять на страничку резиновый флеш, то под макосью в хроме он будет очень некрасиво ресайзиться. Непонятно, кто виноват, хром или флеш, но на Адоби баг повесили - https://bugs.adobe.com/jira/browse/FP-5772. Можно голосовать.

воскресенье, октября 31, 2010

Flash Builder Burrito

Баян уже конечно, но все же скажу, что скачал себе бурито на днях и почитал про coding enhancements, как то:
  • Code templates
  • Metadata code completion
  • Override implement methods
  • Quick Assists such as Rename in file/workspace, Organize imports, Convert to field, Assign to variable, Split variable declaration
  • Generate from usage to generate a local variable, field, method, class, interface, and event handler from their usage
Попробовал - все работает. Честно говоря, порадовало. Хоть и отстали они конечно на несколько лет с этими фичами, но лучше уж поздно, чем никогда.

среда, июля 14, 2010

Internal Flash Builder Error

Если у вас "Internal Flash Builder Error" и ничего больше, а в логе
java.lang.NullPointerException at macromedia.abc.Optimizer.optimize(Optimizer.java:84)...,
то посмотрите, не используете ли вы -link-report в параметрах компилятора.

среда, апреля 21, 2010

ZaaIL - поддержка более 40 форматов изображений во флеше

Zaalabs портировали библиотеку DevIL с помощью алхимии. На данный момент поддерживается более 40 типов изображений. В будущем планируют добавить еще 20 форматов. Попробовать можно по ссылке.

четверг, марта 11, 2010

Flex 4 rap



Гордон занимается текстом :-)

четверг, января 28, 2010

Баг при переименовании класса во Flex Builder

Заметил интересный баг: если переименовать класс в одном проекте, то старательный Flex Builder переименует одноименные классы в других проектах. Точнее названия файлов он оставит старые, а внутри все перелопатит.

вторник, января 12, 2010

Утечка памяти в IE 8

Столкнулся со следующей проблемой. Есть простое приложение, использующее ExternalInterface.addCallback:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
applicationComplete="appCompleteHandler();">
<mx:Script>
<![CDATA[
private function appCompleteHandler():void {
if (ExternalInterface.available) {
ExternalInterface.addCallback("getWidth", getWidth);
}
}

private function getWidth():Number {
return width;
}
]]>
</mx:Script>
</mx:Application>

Флешка вставлена через swfobject. В IE8 при перезагрузке страницы видно, что память отданная под страничку с флешом не освобождается, что приводит к падению браузера через несколько перезагрузок. Немного поискав, нашел в swfobject 2.2 метод:

swfobject.removeSWF(objElemIdStr)

Removes a SWF from your web page. Is especially built to safely (only remove a SWF after it has been loaded, to avoid broken references) and completely (nullify references to avoid memory leaks) remove a SWF in Internet Explorer.

И помогло :)

понедельник, декабря 14, 2009

ArgumentError: Error #2025: The supplied DisplayObject must be a child of the caller.

Есть флекс-приложение, имеющее внутри себя AS3-компонент, использующий fl.controls кнопки и лейблы. При вызове какого-либо поп-апа флекс-приложение начинало неадекватно реагировать на перемещение фокуса по нажатию Tab:

ArgumentError: Error #2025: The supplied DisplayObject must be a child of the caller.
at flash.display::DisplayObjectContainer/getChildIndex()
at mx.core::Container/getChildIndex()
at mx.containers::Panel/getChildIndex()
at fl.managers::FocusManager/::getChildIndex()
at fl.managers::FocusManager/::sortByDepth()
at fl.managers::FocusManager/::sortByTabIndex()
at Array$/Array::_sort()
at Array/http://adobe.com/AS3/2006/builtin::sort()
at fl.managers::FocusManager/::sortFocusableObjectsTabIndex()
at fl.managers::FocusManager/::sortFocusableObjects()
at fl.managers::FocusManager/::keyDownHandler()


Поискав в сети подобную ошибку, наткнулся на несколько постов, в которых во всем винили флешовые компоненты, что и понятно из ссылок на fl.managers::FocusManager. В итоге пришлось переделывать флеш-компонент, подписываясь на Event.ADDED_TO_STAGE его кнопок и выключая в этом событии focusManager - button.focusManager.deactivate().

суббота, февраля 21, 2009

Adobe организует субботник

28 марта Adobe в Сиэтле организует субботник по правке багов во Flex SDK. Приглашаются все желающие. Можно еще участвовать через Connect, ссылку отправят всем зарегистрированным. Будут присутствовать разработчики из Adobe. В общем достаточно любопытное меропрятие.

четверг, февраля 05, 2009

Использование Flex Charting в локализованном приложении

Как известно, флекс-приложения можно локализовывать для разных языков, прописав в параметрах компиляции в атрибуте locale нужную локаль. Но перед этим нужно создать пакет необходимых библиотек для этой локали с помощью команды copylocale (располагается в папке [flexsdk]\bin ):

copylocale en_US ru_RU

Но данная команда игнорирует бандлы для Flex Charting. Это известный баг. И как следствие, наш проект откажется компилироваться для отличной от en_US локали.

Есть несколько способов все исправить.

Первый способ:

1. Найти datavisualization_rb.swc для английской локали:
Например, для Wiwndows:
C:\Program Files\Adobe\Flex Builder 3\sdks\3.2.0\frameworks\locale\en_US\

2. Скопировать его в папку с нужной локалью

3. Открыть с помощью архиватора

4. Переименовать папку "\locale\en_US" в "\locale\ru_RU" (или в какую нужно)

5. Отредактировать catalog.xml – заменить все строки en_US на нужную локаль

6. Вызвать во Flex Builder Project -> Clean.

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

Второй способ (типа официальный):

1. Получить исходники Flex Charting. Обычно они распаковываются в папку [flexsdk]\fbpro.

2. Зайти в папку [flexsdk]\frameworks\projects\ и создать тут структуру папок datavisualization\bundles\en_US\src

3. Зайти в папку [flexsdk]\fbpro\projects\datavisualization\bundles\en_US и скопировать все файлы .properties в новоиспеченную папку из п.2

Теперь copylocale будет работать правильно всегда.

Правда, сравнив архивы из первого способа и из второго можно заметить, что во втором бандлов меньше.

понедельник, января 12, 2009

Будем знакомы - Pivot

Pivot - это открытая платформа для разработки RIA на Java. Она сочетает в себе производительность и юзабилити всех современных RIA-фреймворков и мощь Java-платформы.

Как Flex и Silverlight, Pivot обладает свойствами, благодаря которым создавать GUI приложения достаточно легко: декларативный UI, связывание данных, различные эффекты, интеграцию с веб-сервисами и т.п.

Страница проекта
Демки
Загрузки
Уроки
Более подробный обзор.
Использование JavaScript внутри Pivot

среда, ноября 19, 2008

Оживление Flex Debugger

Непонятно почему перестал работать Debug-режим. Приложение запускалось, но после долгой попытки соединится, выводилось сообщение о том, что это невозможно и советовали проверить действительно ли у меня стоит debug-версия плеера.

Вылечилось это так: после запуска приложения вызываем контекстное меню плеера, выбираем там debugger, пишем в адрес 127.0.0.1, подключаемся и приложение благополучно соединяется с отладчиком. После этой процедуры отладчик стал запускаться без лишних движений по старинке.

Может ли кто-нибудь объяснить такое поведение?

пятница, октября 17, 2008

FlexMonkey - тестирование UI

FlexMonkey - это фреймворк, автоматизирующий тестирование функциональности пользовательского интерфейса Flex-приложений. С его помощью можно записывать и воспроизводить взаимодействия с UI приложения. Также можно генерировать ActionScript-код с тестами. Использует Flex Automation API. Вот небольшой пример.

среда, октября 15, 2008

Adobe FlexTeam будут в Москве

Совершенно случайно узнал о том, что во второй половине октября FlexTeam будут в Москве на следующих мероприятиях:

- The 4th Software Engineering Conference (Russia) 2008 SEC(R) 2008 (Enrique Duvos).
- Russian Internet Week - http://www.riw2008.ru/program/
- User Experience Conference (Serge Jespers)
- Russian Flex User Group (30 октября) - тоже обещали заехать.

Ссылка

среда, сентября 17, 2008

Unit-тесты в ActionScript

Недавно заинтересовался созданием тестов в процессе разработки. На тот момент я знал только одну тулзу для создания unit-тестов - это FlexUnit, который переехал под крыло Adobe. Немного поискав, я открыл для себя fluint. Fluint поддерживает
  • множественные асинхронные операции;
  • поддержку setup и teardown для задания каких-то начальных параметров и их очистки;
  • поддержку тестирования UIComponent;
  • поддержку тестирования команд и контроллеров Cairngorm;
  • вывод результатов в виде XML;
  • поддержку тестов в модулях.
В общем, попробовав оба, мне понравился fluint.
А кто еще что-нибудь использует и как относится к тестированию в процессе разработки?

пятница, сентября 12, 2008

напоминание != remember

Кто интересно локализовывал 10 плеер для русского языка? В контекстном меню плеера в разделе разрешения использования микрофона есть 2 пункта - разрешить и запретить, а внизу галка Remember, то есть запомнить и в следующий раз не спрашивать, а на русский перевели как Напоминание, то есть получается надо напоминать каждый раз, если галка отмечена?