诡异的 未处理的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设计的不人性化

相关文章
相关标签/搜索