Я действительно не понимаю UncaughtErrorEvent и не могу заставить его работать на приложение Air 2.6. Если я пройду через код с отладчиком, я получаю очень странные результаты.ActionScript 3.0 UncaughtErrorEvent не работает должным образом
Это код:
public class Main extends Sprite{
public function Main(){
loaderInfo.uncaughtErrorEvents.addEventListener(UncaughtErrorEvent.UNCAUGHT_ERROR, onUncaughtError);
// ...
}
...
private function onUncaughtError(e:UncaughtErrorEvent):void
{
var error:Error = e.error;
Logger.log("Uncaught Error - Type: " + e.type + " - Message: " + error.message, "session");
}
}
я устанавливаю точку останова на линии var error:Error = e.error;
и запустить приложение в одной точке, происходит исключение и отладчик правильно разбивает на определенной строке.
Теперь наступает странная часть.
Когда я нажимаю на «перешагнуть (F6)» Я бы ожидать, что приложение, чтобы перейти к следующей строке «Logger.log (...» - но вместо этого, консоль будет отображать исключение, сброшенная
Error #2044: Unhandled IOErrorEvent:. text=Error #2035: URL Not Found.
и приложение идет только обратно работает. линия «Logger.log (...» это никогда не выполняется , как это возможно? Как это может быть, что отладчик остановится на var error:Error = e.error
, но следующая строка не выполненный?
С благодарностью за разъяснение
И, кстати, 'e.error' может быть либо« ошибкой », либо« ошибкой ». – Kodiak