13 часов назадХотелось бы узнать, Как вы относитесь к пиву? Если положительно, то какое предпочитаете? Если отрицательно, то почему? Просто интересно...
2 дня назадпрям таки тебе и скажут здесь посмотри
3 дня назадНапишите мне на имейл (sbnur@front.ru) - очистка памяти в флеш-плеере нетривиальная проблема и все зависит от конкретного кода - чтобы не превращать, как уже отмечалось, в форум, лучше обсудить все приватно
3 дня назад1) Спасибо всем кто ответил.
2) Чтобы блог действительно не превращался в форум хотелось бы видет более обоснованные ответы, приводите пожалуйста доводы доказывающие вашу точку зрения.
3) Из комментов видно, что не все понимают зачем нужен именно мувик с вложенными в его кадры анимациями. Поясняю: этот мувик обычно собирается дизайнером, который не имеет особого представления о работе AS. Дизайнеру проще сделать мувик с лейблами чем написать специальный класс. Я же использую один класс для всех подобных мувиков в котором программно обрабатываю переход от одной анимации к другой. Таким образом для всех мувиков используется один класс.
4) Знаю что использование мувиков, созданных в IDE не является хорошей практикой, но в данном случае удобен именно этот подход. К тому же если метод мувика gotoAndStop реализован и описан в официальной документации он может использоваться и должен правильно работать.
5) Если встраивание видео в мувик несет в себе какие-то сложности, об этом должно быть указано в хэлпе.
6) Теоретически наверное можно найти какое-то другое решение проблемы, но речь изначально шла о том является ли такое поведение багом, и если так - этот баг должен быть добавлен в базу Adobe.
7) Очень хотелось бы ,чтобы кто-то проверил это у себя или указал как эту проблему можно решить.
3 дня назадgotoAndStop(label);
мама роди меня обратно ...
3 дня назадБлог превращаетсо в форум -- пичалько.
3 дня назадМожет попробовать аттачить и удалять мувиклипы при необходимости из библиотеки? Удалили предыдущий мувик со stage и добавили новый, который нужно проиграть.
примерно так:
var _class:Class = getDefinitionByName("nameClass") as Class;
var _mc:MovieClip = new MovieClip(new _class());
addChild(_mc);
...
removeChild(_mc);
3 дня назадСпасибо за ответ. Хочу пояснить что я пробовал чтобы люди могли лучше понять суть проблемы. Сорри, если много букв. Вот код функции для переключения кадров с видео: [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 что какжется логичным. Хочется делать простые вещи без всяких костылей и хакерства.
24 октября 2009 года во Львове мы реализовали давно созревавшую идею конференции опытных флексеров с докладами по практикам разработки больших флекс-приложений на реальных проектах, наладить общение людей, которые уже знают флекс, имеют свои наработки в этой технологии и хотят знать, как другие делают это.
Эта встреча флексеров отличалась также тем, что все докладчики представляли практики одного проекта производства компании EPAM Systems а точнее, ее львовского отделения. Кстати, епамовский отдел кадров мы благодарим отдельно за помощь в организации этой конференции, а саму компанию — за смелость и открытость в передаче опыта и за бесшовную интеграцию конференции с афтепати — за счет фирмы.
На этой встрече были представлены четыре доклада, пойдем по порядку.
Первым выступил ведущий разработчик флекс-проекта Андрей Табачин из львовского EPAM Systems. Его трехчасовый, сложный и глубокий доклад стал концентрированным набор лучших практик, выработанных командой под его руководством на протяжении двух лет создания сложного проекта. Стоит отметить, что в самом начале работы команда не имела большого опыта с Flex, но имела хороший опыт в других технологиях от Delphi до .NET, таким образом они прошли путь от самых азов флекса до состояния завершенного большого проекта, с включением практик XP и Agile.
Наработки изложены Андреем в PDF-документе Flex3bestpractices.pdf, который можно скачать со страницы Flex3 development best practices на свежеоткрытом блоге Андрея Табачина.
Второй доклад был представлен Андреем Проциком из львовского EPAM Systems. Помимо самой презентации, к докладу прилагаются исходные файлы проекта, демонстрирующего разработку UI-элемента для Flex 4 качайте файл custom-flex-4-spark-components.zip.
Если вы еще не знаете, Flex 4 реализует более эффективное разделения логики и вида - это новое скинование. Теперь совместный труд дизайнера с кодером и его результат стройнее. Каждый UI-компонент приложения по умолчанию реализуется в SDK двумя файлами: классом бизнес-логики (это "модель" из MVC) и классом скина с описанием вида и поведения компонента, включая состояния, эффекты и т.д. (это - "вид" из MVC). В результате мы имеем во Flex 4 еще одну разновидность Code Behind, на мой взгляд - вполне стройную, и теперь она поддерживается средствами разработки, чего не было во Флекс 3, об этом мы еще поговорим позднее.
А сейчас достаточно сказать, что за этим подходом - ближайшее и интересное будущее флекса, так что стоит хорошо вникнуть в исследование Андрея Процика - Создание компонентов на базе архитектуры Spark (Flex 4) - custom-flex-4-spark-components.zip
Третьим докладом стал экспромт от Олега Керницкого, он рассказал об управлении рисками для разработчиков. А поскольку к экспромту презентация не прилагается, то мы здесь просто скажем Олегу наше спасибо - было классно.
Четвертая презентация от Ростислава Сирыка была попыткой в сжатой, динамичной форме рассказать о том лучшем, что он узнал за два месяца работы в команде толковых флексеров львовского EPAM Systems. У нее есть постоянный адрес: Чему я научился от команды Flex-разработчиков.
Мы хотим еще раз поблагодарить всех, кто помог состояться этой встрече флексеров - нам удалось заставить заговорить тех, кто много умеет, но мало об этом говорит 

Комментарии
Ого. А ну ка, посмотрим презентации
Касательно "Лучшие практики разработки Flex 3" - воистину: "Век учись, век живи". Чем больше занимаюсь разработкой АС3 приложений, тем больше понимаю что я мало знаю
Про Flex3bestpractices.pdf от Андрея Табачина.
Но нет, снова постулируются новые CC. Плюсы введения собственных CC:
Минусы:
Поэтому мы используем Adobe CC.
А в целом документ правильный и хороший. То, что там что-то спорно или можно сделать лучше - фигня.