2012.04.27 | mucho
こんにちは。muchoです。
昨夜は会社で事務所移転の打ち上げをしたんですが、
盛り上がりすぎて近隣の皆様に大変なご迷惑をおかけしました。
申し訳ございませんでした。お詫び申し上げます。
さてさてさてさて。
前に一度書いて、えーとあれはどうするんだっけ?となったのでメモ。
デバッグプレイヤーでエラーがポップアップしないようにする方法です。
もう一つ、書き出しがデバッグモードかリリースモードかの判定もメモ。
不明なエラーイベントを取得するUncaughtErrorEventsクラスを使います。
loaderInfo、LoaderにaddEventListenerで使います。
書き出しのバージョンが10.1以上で使えます。
さらにキモなのがイベント発生時に e.preventDefault(); を入れて
デフォルト時の挙動を抑える方法です。これでエラーのポップアップは
しなくなります。
public function Main():void { // 書き出しのモード判定 isDebug = Boolean(new Error().getStackTrace().search(/:[0-9]+]$/m) > -1); //予期せぬエラー表示対策 loaderInfo.uncaughtErrorEvents.addEventListener(UncaughtErrorEvent.UNCAUGHT_ERROR, onUncaughtError); } private function onUncaughtError(e:UncaughtErrorEvent):void { e.preventDefault(); //←これがないとポップアップします。 // デバッグ時にはエラーを把握するためにtraceしてみる if (isDebug) { trace(e.error.type+":"+ e.error.text); } }
さりげなくハマったのが、書き出しのバージョン。
10.0と10.1の違いって、あれやこれや結構ありますね。。。