Flash builder 除錯技巧 (分享)

weixin_34126215發表於2013-08-27

如果這個Flash能直接自己執行,例如Air或者簡單不依賴於外部網頁的flash,當然非常容易除錯。直接F11嘛~~~

 
但是,如果這個Flash要依賴於外部環境才能執行,那該怎麼除錯呢?
 
核心辦法:
 
1、設定預設的瀏覽器為CMD(或者一些肯定無法執行Html的程式)
 
 
這裡有一個細節要注意:
 
例如Test2是執行html,那麼指向cmd來除錯的話,builder就會卡在等待除錯連線狀態中。但如果是執行swf,那麼指向cmd的話,是無效的,因為cmd會自動啟動flash player來播放。
 
2、在外部環境執行該flash(例如利用Flash cs把flash釋出到目標目錄、或者遷移到目標目錄,或者用fiddler替換)
這時候,會自動跟flash builder連線起來,如果沒有連線,可能有三個原因:
——swf不是debug版的(Flash CS有這個釋出選項)
——flash player不是debug版的(player自動升級後就變普通版了)
——swf沒有被實際執行到
 
此時只要在builder中對as檔案打斷點即可,由於debug版的swf,帶上了除錯資訊,builder會在對應斷點位置中止flash執行。
當然,只是為了看看trace資訊也可以這麼做的~~~
 
神奇的事:可以用一個完全無關的工程啟動除錯等待(例如Test2),然後在目標工程中打斷點,連線成功後,斷點一樣可以生效。
其實也不神奇了,執行Test2只是為了讓builder進入除錯等待狀態,實際上Test2是沒有被執行到的。而連線之後,builder接收到的都是我們真正要除錯的swf發來的除錯資訊,也就是對應到哪個檔案哪一行這樣的資訊。
 
這個過程其實跟Flash CS除錯技巧是同一個原理。
 
注意事項:
執行過程中,需要除錯的程式必須是最早被執行的debug版swf!!否則會被其他swf佔了這個連線
 
 

相關文章