TheMinerFlash性能分析器
The Miner是由加拿大的Jean-Philippe Auclair(jpauclair.net)開發(fā)的Flash性能分析器(profiler),其前身為開源的FlashPreloadProfiler。The Miner雖然現(xiàn)在已“淪為”商業(yè)軟件,但其個人非商業(yè)用途(比如學(xué)習(xí)研究,開源項目)仍可以免費自由下載使用。前往TheMIner官方網(wǎng)站 The Miner是完全綠色的軟件/類庫,提供兩種使用模式:
準(zhǔn)備:
1、確認(rèn)你的FlashPlayer為debug版,檢測你的FlashPlayer。
2、下載The Miner類庫,或者去官網(wǎng)下載頁面。
使用方法1:
1、在或者FlashBuilder項目FlashDevelop中,將下載的類庫解壓后SWC文件夾中的TheMiner_zh-cn.swc (簡體中文版,你可以選擇其他語言)放到你的lib目錄下,或者“項目”>“屬性”>“Flex構(gòu)建路徑”>“庫路徑”>“添加SWC”;
2、導(dǎo)入TheMiner
import com.sociodox.theminer.TheMiner; |
在舞臺上加載TheMiner
stage.addChild(new TheMiner()); |
例:
package
{
import com.sociodox.theminer.TheMiner;
import flash.display.Sprite;
import flash.events.Event;
public class MinerTest extends Sprite
{
public function MinerTest ()
{
this.addEventListener(Event.ADDED_TO_STAGE,init);
}
private function init(e:Event):void{
stage.addChild(new TheMiner());
this.removeEventListener(Event.ADDED_TO_STAGE,init);
}
}
}
3、現(xiàn)在只需要F11調(diào)試運行SWF即可,你會發(fā)現(xiàn)在SWF窗口上側(cè)多了一橫條工具欄,上面有很多小按鈕,還顯示了當(dāng)前FPS和內(nèi)存占用值,比如點擊第二個按鈕“即時狀態(tài)”,會顯示更詳細的flash狀態(tài)信息:
另有更強大的“記憶體分析器”、“效能分析器”、“載入器分析器”等:
上面的“記憶體分析器”很像FlashBuilder自帶的概要分析器吧,顯示了每個類(如Shape、MovieClip、ByteArray、Bitmap等)的實例數(shù)變化和內(nèi)存占用,能幫助你快速判斷哪些實例是多余該被清除的。
“效能分析器”就更底層了更強大了,會精確到微秒(μs)級顯示定時器、渲染器、網(wǎng)絡(luò)連接、繪圖、幀事件等個函數(shù)的運行耗時及百分比,針對這些,開發(fā)者就可以對癥下藥,優(yōu)化SWF運行效率。
“載入器分析器”會展示每個Loaderde的運行狀態(tài)、大小、目標(biāo),而且還提供篩選功能。
此外,還有其他實用工具,如鼠標(biāo)時間、顯示重回區(qū)域、顯示物件狀態(tài)、內(nèi)部事件分析器、SWF窗口截圖、復(fù)制信息到剪貼板、最小化/關(guān)閉TheMiner等。
4、最后,在發(fā)布Flash的時候,注釋掉相關(guān)代碼即可。
使用方法2:
方法1很簡單,不過如果有大量不同的項目需要測試,或者你希望對你今后的沒一個Flash作品都有這樣的測試的話,方法1就很麻煩了。對此,TheMiner提供了Pre-Launcher預(yù)加載的方法,首次簡單的“安裝”后,可統(tǒng)一的對本機上所有的SWF做性能測試。
原理也很簡單,設(shè)置FlashPlayer啟動時,首先加載TheMiner.swf,這樣Flash每次運行時候先加載TheMiner作為載體,然后將要打開的目標(biāo)SWF加載到TheMiner中,使要打開的SWF在TheMiner控制之下,這樣就可以直接測試了。
1、將下載的類庫解壓后SWF文件夾中的TheMiner_zh-cn.swc放到C盤根目錄,并重命名為TheMiner.swf,即C:TheMiner.swf。
2、到Flash Global Security Settings Flash Player全局安全設(shè)置中
(即打開該網(wǎng)頁http://www.macromedia.com/suppor ... ings_manager04.html)
在該網(wǎng)頁的SWF編輯多個位置-〉添加位置-〉信任此位置,中依次填入:
TheMiner.swf TheMiner.swf?Tracefile=true TheMiner.swf?HookClass=getQualifiedClassName
如:
3、在C盤中找到mm.cfg文件(XP:C:\Documents and Settings\Administrator\mm.cfg, WIN7:C:\Users\Administrator\mm.cfg),用記事本打開,寫入下面內(nèi)容,然后保存。
PreloadSWF=C:TheMiner.swf
OK,現(xiàn)在只要隨意啟動一個SWF,就可以用TheMiner做效能分析了。
成功安裝后,如果想要臨時暫停使用The Miner,只需要將C盤中那個TheMiner.swf重命名(比如重命為"_TheMiner.swf","TheMiner._swf"等)即可,恢復(fù)使用只需要再改回原來的名字TheMiner.swf。
