詭異的 未處理的IOErrorEvent 2035

今天遊戲發佈上線以後,老是隨機的出現卡死。this

換了個safari以後,看到拋了 IOErrorEvent。spa

問題是,我全部的Loader都加入了contentLoaderInfo監聽。而拋出來的又沒有堆棧。設計

搞了半天以後,我決定全部刪除Loader的地方,都加入一個全局的IOErrorEvent看看究竟是什麼會是。最終看到以下的日誌:日誌

ArgumentError: Error #1063: com.xtar.loader.utils::DisplayObjectLoader$/globalIOErrorHandler() 的參數數量不匹配。應該有 0 個,當前爲 1 個。遊戲

at flash.display::Loader/_unload()ip

at flash.display::Loader/unloadAndStop()rem

at _428_fla::MainTimeline/frame57()flash

at flash.display::MovieClip/gotoAndStop()it

at com.xtar.loader.utils::XMovieClipInfoManager$/allGotoAndStop()io

at com.xtar.loader.utils::XMovieClipInfoManager$/cacheBitmapMovie()

at com.xtar.loader.core::XMovieclipLoaderItem/privateLoaderComplete()

at flash.events::EventDispatcher/dispatchEventFunction()

at flash.events::EventDispatcher/dispatchEvent()

at com.xtar.loader.utils::DisplayObjectLoader/loadComplete()

at com.xtar.loader.utils::DisplayObjectLoader/loadByMovieclip()

at com.xtar.loader.utils::DisplayObjectLoader/loadByObject()

at com.xtar.loader.utils::DisplayObjectLoader/loadByLoader()

at MethodInfo-2473()

 

我不當心在IOErrorHandler參數寫錯了。可是正好,就這樣把個人堆棧打出來了。原來:

個人swf裏面,播放到最後一幀的時候,會自動removeChild(this)。而後flash自己機制就會自動調用unloadAndStop。

而後loader就會自動拋出IOErrorEvent.

 

靠。這個明顯是flash設計的不人性化

相關文章
相關標籤/搜索