В этом руководстве речь пойдёт о TheMiner‘е (отличный Flash профайлер) и о FlashDevelop‘е (лучшая и бесплатная среда разработки для Action Script / haXe), соответственно подразумевается, что вы с ними знакомы и желаете использовать их совместно. Если не знакомы — рекомендую ознакомиться.
Всего есть два пути использования TheMiner во FlashDevelop:
— Используя TheMiner SWC, как любую другую внешнюю библиотеку.
— Добавляя TheMiner SWF в список профайлеров FlashDevelop.
Почему существует два пути? Потому что у каждого есть сови преимущества и недостатки, и, в зависимости от обстановки, тот или иной путь может оказаться наиболее подходящим.
Итак, давайте попробуем оба пути шаг-за-шагом. Пожалуйста запустите FlashDevelop и откройте \ создайте в нём as3 проект чтобы продолжить.
TheMiner в качестве внешней SWC
1. Для начала, купите TheMiner или скачайте бесплатную версию для некоммерческого использования.
2. Распакуйте скачанный архив, зайдите в папку «SWCs» и выберите подходящую версию (в зависимости от требуемого языка), например TheMiner_en.swc
Если вы знакомы с использованием SWC во FlashDevelop, смело пропускайте следующие 2 пункта руководства и продолжайте читать с 5го пункта.
3. Скопируйте выбранную SWC в папку «lib» вашего проекта (или в любое другое удобное для вас место, где вам привычнее хранить внешние библиотеки).
4. Добавьте скопированную SWC в библиотеку проекта кликнув на SWC правой кнопкой и используя пункт контекстного меню «Add To Library«.
5. Чтобы запустить TheMiner в своём проекте, следует добавить его в DisplayList. Выберите подходящее место в проекте для добавления (например, там где вы настраиваете stage) и напишите там пару строк кода.
// первая строка - прописываем TheMiner в импортах класса: import com.sociodox.theminer.TheMiner; //вторая строка - добавляем TheMiner в DisplayList с помощью добавления на stage //если вы используете версию TheMiner 1.3.10 и ранее, то не забудьте //передать параметр "true" в конструктор stage.addChild(new TheMiner());
Вот пример пустого проекта с подключенным TheMiner:
package { import com.sociodox.theminer.TheMiner; import flash.display.Sprite; import flash.events.Event; /** * ... * @author focus */ public class Main extends Sprite { public function Main():void { if (stage) init(); else this.addEventListener(Event.ADDED_TO_STAGE, init); } private function init(e:Event = null):void { this.removeEventListener(Event.ADDED_TO_STAGE, init); //если вы используете версию TheMiner 1.3.10 и ранее, то не забудьте //передать параметр "true" в конструктор this.addChild(new TheMiner()); } } }
Это всё, что требуется для подключения TheMiner SWC! Как вы видите, подключать TheMiner данным способом весьма просто.
Скомпилируйте проект, запустите его в Debug версии Flash Player (по умолчанию во FlashDevelop) и вы увидите TheMiner в действии!
Итак, в каких случаях следует выбирать способ подключения TheMiner в качестве SWC?
— если мы хотим иметь возможность запускать TheMiner везде, где можно запустить нашу SWF в Debug версии Flash Player или AIR, включая мобильные устройства
— если мы хотим иметь дополнительный контроль того, когда именно показывать TheMiner
— если мы хотим иметь возможность взаимодействовать c TheMiner прямо из кода, для более гибкого и эффективного профайлинга
TheMiner как один из профайлеров FlashDevelop
1. Для начала, купите TheMiner или скачайте бесплатную версию для некоммерческого использования.
2. Распакуйте скачанный архив, зайдите в папку «SWFs» и выберите подходящую версию (в зависимости от требуемого языка), например TheMiner_en.swf
3. Поместите этот SWF в удобное место на вашем PC и запомните путь до него. Пусть для примера путь будет таким: «D:\Programming\Flash\Tools\TheMiner.swf».
4. Откройте меню «Tools->Program Settings» во FlashDevelop.
5. Перейдите в настройки плагина AS3Context и найдите там строку Custom Profilers.
6. Нажмите кнопку «…» в правой части найденной строки и вставьте на новую строку путь до TheMiner SWF в появившемся окне. Нажмите OK.
7. Закройте окно Settings и нажмите на кнопку «SWF Profiler» на панели инструментов (или выберите пункт меню «View» с таким же названием).
8. Нажмите кнопку «Active Profiler«, которая находится в левой части открывшегося окна «Profiler» и в появившемся списке выберите «TheMiner».
9. Чтобы TheMiner запускался при запуске SWF, нажмите кнопку «Auto-start Profiler» если она выглядит как красный флаг, чтобы она стала зелёным флагом.
Вот и всё — теперь вы можете скомпилировать проект и увидеть что TheMiner работает!
Такой способ использования TheMiner во FlashDevelop может показаться не таким удобным, как использование TheMiner в качестве SWC, однако все эти действия вам придётся проделать лишь один раз! Когда вы в следующий раз захотите использовать TheMiner, подключенный таким образом — достаточно будет лишь проверить, включен ли флаг Auto-start profiler!
Итак, в каких случаях следует использовать TheMiner в качестве одного из профайлеров FlashDevelop?
— если мы не хотим включать код TheMiner в наш SWF или AIR приложение после окончания его отладки / разработки во FlashDevelop и при передаче его для тестирования (отправка на ftp / устройство и т.д.)
— если мы хотим простого подключения профайлера, без необходимости что-то менять или добавлять в свой код, сохраняя его чистым от дополнительных библиотек
PS: Сегодня вышло обновление для TheMiner с множеством исправлений и некоторыми интересными нововведениями.
Дмитрий у меня такой вопрос возник. Подключил профайлер, он показывает мне 15 мб при пустом проекте. Это так должно быть?
Если вы смотрите релизную флэшку в релизном FP и не в браузере, где могут быть открыты ещё другие флэшки, то такого быть не должно.
Но ведь сам TheMiner тоже жрет память. Получается нужно каждый раз вычитать из итогового значения?