2009-02-07 3 views
4

У меня есть приложение Flex, которое кажется большим, чем должно быть. В нем много кода, но не много активов, и это просто кажется большим, но я не уверен, как разобраться, где проходит пространство.Любой способ анализа размера SWF, встроенного в Flex?

Я знаю о параметре -link-report, но он дает только размеры связанных с библиотекой классов библиотеки. Мне очень интересно видеть отчет о размерах всех классов и ресурсов в моем приложении, и это было бы огромным бонусом, если бы я мог также просматривать их зависимости. Не зная, как скомпилирован код, я не уверен, что это возможно, но похоже, что это должно произойти, поскольку компилятор может дать мне размеры отдельных классов, связанных с другими библиотеками.

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

Чтобы быть ясным, меня не интересуют советы о том, как уменьшить размер файла, просто отчет о том, что используется и какие классы ссылаются на что.

У кого-нибудь есть идеи?

КОРРЕКЦИЯ - Отчет о связи показывает все классы. В моем конкретном проекте в Flex Builder было несколько файлов CSS, предназначенных для компиляции в swf. Мой отчет о ссылке для основного приложения был перезаписан этими компиляторами css!

+0

Отличный вопрос! Я искал что-то вроде этого. –

ответ

3

Отчет о связях фактически содержит все скомпилированные классы, а не только внешние библиотеки (по крайней мере, с SDK Flex 4). Доступен xsl, который будет генерировать html-файл отчета о ссылке, чтобы его было легче читать.

Проверить этот пост: http://blog.iconara.net/2007/02/25/visualizing-mxmlcs-link-report/

+0

Вы правы, в отчете о ссылках отображаются все классы. Проблема оказалась в том, что у меня также было несколько файлов css для компиляции в моем проекте. Flex Builder использует те же параметры компилятора для каждого swf, который он создает в проекте. Сообщение о ссылке для моего приложения было перезаписано последним css. –

3

Существует утилита командной строки называется flash.swf.tools.SwfxPrinter в swfkit.jar, который поставляется с Flex Builder (или плагин или SDK), и которые можно использовать для анализа информации о классе размеры. Joe Berkovitz wrote some good instructions о том, как использовать его в своем блоге, и он работал над инструментом графического интерфейса AIR, который использует его, но я не уверен, что он когда-либо публиковал этот инструмент. Тем не менее, вы можете использовать его инструкции для использования утилиты непосредственно из JAR.

+1

Инструмент анализа теперь доступен здесь: http://code.google.com/p/it-depends/ –

+0

Большое спасибо за обмен! –