FlexiPedia Wiki on Adobe Flex
Флэш Потрошитель - Жизнь вокруг технологииЖизнь вокруг технологии

Флэш Потрошитель этот | тот | 1.0

С 09.09.2002
  • Коллекция багов Flash
  • Ссылки для начинающего аниматора
  • Flex для PHP-разработчиков
  • Как вы используете Flash?

Поток сознания

makc3d ответил на Избранные баги Flash:

beer good. spam bad!

13 часов назад

Флэшер-аноним ответил на Избранные баги Flash:

Хотелось бы узнать, Как вы относитесь к пиву? Если положительно, то какое предпочитаете? Если отрицательно, то почему? Просто интересно...

15 часов назад

Флэшер-аноним ответил на Еще один способ заработать на играх:

прям таки тебе и скажут здесь посмотри

2 дня назад

Флэшер-аноним ответил на Нужна помощь по остановке видео и очистке памяти после него:

Напишите мне на имейл (sbnur@front.ru) - очистка памяти в флеш-плеере нетривиальная проблема и все зависит от конкретного кода - чтобы не превращать, как уже отмечалось, в форум, лучше обсудить все приватно 

3 дня назад

makc3d ответил на Еще один способ заработать на играх:

403

R05T
 

Sorry, access denied for you. You may want to:

Log in
or
Register
 

Thank you.

Test key: 1

 

3 дня назад

imset ответил на Нужна помощь по остановке видео и очистке памяти после него:

1) Спасибо всем кто ответил.

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

3) Из комментов видно, что не все понимают зачем нужен именно мувик с вложенными в его кадры анимациями. Поясняю: этот мувик обычно собирается дизайнером, который не имеет особого представления о работе AS. Дизайнеру проще сделать мувик с лейблами чем написать специальный класс. Я же использую один класс для всех подобных мувиков в котором программно обрабатываю переход от одной анимации к другой. Таким образом для всех мувиков используется один класс.

4) Знаю что использование мувиков, созданных в IDE не является хорошей практикой, но в данном случае удобен именно этот подход. К тому же если метод мувика gotoAndStop реализован и описан в официальной документации он может использоваться и должен правильно работать.

5) Если встраивание видео в мувик несет в себе какие-то сложности, об этом должно быть указано в хэлпе.

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

7) Очень хотелось бы ,чтобы кто-то проверил это у себя или указал как эту проблему можно решить.

3 дня назад

Artem Brigert ответил на Нужна помощь по остановке видео и очистке памяти после него:

gotoAndStop(label);

мама роди меня обратно ...

3 дня назад

shaman4d ответил на Нужна помощь по остановке видео и очистке памяти после него:

Блог превращаетсо в форум -- пичалько.

3 дня назад

Флэшер-аноним ответил на Нужна помощь по остановке видео и очистке памяти после него:

Может попробовать аттачить и удалять мувиклипы при необходимости из библиотеки? Удалили предыдущий мувик со stage и добавили новый, который нужно проиграть.

примерно так:

var _class:Class = getDefinitionByName("nameClass") as Class;

var _mc:MovieClip = new MovieClip(new _class());

addChild(_mc);

...

removeChild(_mc);

3 дня назад

imset ответил на Нужна помощь по остановке видео и очистке памяти после него:

Спасибо за ответ. Хочу пояснить что я пробовал чтобы люди могли лучше понять суть проблемы. Сорри, если много букв. Вот код функции для переключения кадров с видео: [collapse] <code> public function playAnim(label:String):void { // проверяем есть ли такая метка в списке доступных if (labels.indexOf(label) != -1) { // если метка отличается от текущей выполняем переход if (currentLabel != label) { // "anim" - это мувик с именем "anim" и объектом Video внутри, в нем также могут находится мувики с графикой if (anim) { // стопим его, при помощи ENTER_FRAME Event с WeakReference я проверял его текущий кадр и трейс показывает что он нормально стопится anim.stop(); // удаляем его из DisplayList removeChild(anim); // проходим по всем его вложенным DisplayObject-ам while (anim.numChildren) { var vid:Video = anim.getChildAt(0) as Video; // если находим видео, пытаемся принудительно вызвать GarbageCollector if (vid) { trace(">>> FORCE GC! <<<"); try { new LocalConnection().connect('foo'); new LocalConnection().connect('foo'); } catch (e:*) {} } // удаляем все найденные DisplayObject-ы anim.removeChildAt(0); } // обнуляем автоматически созданную переменную (сам флэш иногда это не делает) anim = null; } // переходим на новый кадр с мувиком "anim" внутри которого лежит другое видео gotoAndStop(label); } } } </code> [/collapse] Странно, что без вызова GarbageCollector-а все видео продолжают висеть в памяти. Если вызывать GarbageCollector как показано в коде, то некоторые видео удаляется (исчезают трейсы от них), а некоторые продолжают висеть в памяти остановленные на одном кадре, хотя ссылок на них в коде больше нет. Хэлп от Адоб утверждает (http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/media/Video.html) что потоковое видео можно остановить соответствующими вызовами: myVid.attachCamera(null); myVid.attachNetStream(null); Про то как остановить встроенное видео нет ни слова. Хотелось бы видет простой метод dispose() как у BitmapData что какжется логичным. Хочется делать простые вещи без всяких костылей и хакерства.

3 дня назад

Более старые 
Главная

ant

За что мы любим Apache Ant

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

Как Apache Ant помогает человеку не делать работу за роботов

Приведу свежий пример из собственного опыта. На одном из последних проектов я должен был делать цепочку одних и тех же операций:

  1. Увеличить номер билда в версии приложения (например, с 0.2.178 до 0.2.179). В двух файлах: текстовом build.number и файле Version.as, который затем вкомпилируется в приложение для точного отображения его текущей версии для тестера в правом нижнем углу приложения.
  2. Скомпилировать версию приложения для Flash Player 9.
  3. Также скомпилировать версию для Flash Player 10, с другим именем. Код не менялся, но дело в том, что в моем проекте активно использовалась BitmapData максимальных размеров, а во Flash Player 10 эти размеры увеличены с 2880x2880 пкс до 4095x4095 пкс. И чтобы выжать максимум возможностей для пользователя, не заставляя его при этом обновлять FP9 до FP10 (требование заказчика), html-станица автоматически подставляла нужный swf-файл приложения с помощью SWFObject.
  4. Положить созданные билды вместе с файлом версии build.number в целевой каталог, а также скопировать их в соотвествующие номеру билда подкаталоги типа "/179". Копии создаются для возможности быстрого отката к нужной версии, что особо важно на завершающих этапах проекта, особенно если нервный немецкий клиент уже сам тестирует приложение.
  5. Закачать созданные билды в целевые каталоги FTP-сервера.

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

Думаю, очевидно, что все вышеперечисленные шаги легко алгоритмизируются и превращаются в набор задач для простого автоматического робота, которым и является Apache Ant. Заставлять человека выполнять такие для каждой новой сборки приложения (а она может происходить весьма часто, иногда интервалы между сборками становятся менее трех минут) — задача истинно дьявольская. Я бы сделал так, если бы хотел превратить человечество в стадо унылых и тупых биороботов. Судя по некоторым спамерам и вообще, кое-кто успешно релизует такие модели, люди, опомнитесь, вы идете в ад, такой ад.

Стоп, сатана, тебе здесь не место

Но на гуманистическом сайте Ф. Потрошителя мы ставим жесткий заслон планам сатаны. Мы любим Apache Ant и посвящаем ему еще один пост. В конце я приведу файл, что решал все мои указанные выше задачи, но если вы еще совсем ничего не знаете про Ant, то приглашаем вас на

знакомство с Apache Ant

Блоггер Самойлов написал совсем надавно вот такую короткую статью: Знакомство с ANT. Как бы отвечая ему, Константин Ковалев тоже написал статью, но она длинная и написана уже давно, со свойственной Константину основательностью: Сборка Flex-приложений с помощью Ant, и вот еще есть доклад от него же "Разработка Flash-проектов с использованием Apache Ant и FDT".

Ваши более тесные отношения с Apache Ant

После этих двух статей вы уже почти специалист по Apache Ant и вам можно дать это:

  • Домстраница Apache Ant и описание набора задач Apache Ant (жмите там Ant Tasks).
  • Обсуждение Apache Ant (и Maven, спасибо Алексею Квирингу из Альтернативы).
  • Проект "Турецкий свитер": сборник решений популярных Ант-задач.
  • Проект "Antennae" для Flex.

И помните: Ант автоматизировал, автоматизировал, да не перенедоантоавтоматизировывал, а вот тот файл build.xml, что решал мои задачи, он простой, тупой и неоптимизированный, но черт побери он работает.

  • ant
  • opensource
  • performance
  • tools
  • Подсказки
- Rost, чт, 16/04/2009 - 16:40
  • Блог пользователя Rost
  • 8 комментариев
  • В Жуйк
Примечания: Статус документа => в процессе ·
Статьи · Идеальный клип · Персоналии · Глоссарий (уст.) · Что делать? · К началу ↑
© 2002-2012 Ростиславр · О проекте · Подписка на RSS · α-тестировани невероятного
]]>
]]>
Что такое OpenID?
  • Войти по OpenID
  • Скрыть вход по OpenID
  • Регистрация
  • Запросить новый пароль