当我在调试Flash播放器中运行Flex应用程序时,如果发生意外情况,就会弹出异常弹窗。但是当客户使用应用程序时,他不会使用调试Flash播放器。在这种情况下,他不会收到异常弹窗,但UI不起作用。
因此,出于支持性的考虑,我想捕获Flex UI中可能发生的任何异常,并在Flex内部弹出窗口中显示错误消息。使用Java,我只需在try/catch块中封装整个UI代码,但是对于Flex中的MXML应用程序,我不知道在哪里可以执行这样的通用try/catch。
因此,出于支持性的考虑,我想捕获Flex UI中可能发生的任何异常,并在Flex内部弹出窗口中显示错误消息。使用Java,我只需在try/catch块中封装整个UI代码,但是对于Flex中的MXML应用程序,我不知道在哪里可以执行这样的通用try/catch。
((IEventDispatcher)loaderInfo["uncaughtErrorEvents"]).addEventListener("uncaughtError", handlerFunction)
,则它应该在任何运行对10.1 SDK的SDK中工作,因为这些属性将在播放器的运行时存在。您甚至可以使用if (loaderInfo.hasProperty("uncaughtErrorEvents") { }
进行包装,以确保它不会在Flash 9/10中出现问题(当然,错误处理将不起作用,但它不会崩溃)。 - Richard Szalay