【发布时间】:2011-10-06 04:56:32
【问题描述】:
我在我的 Flash 应用程序中使用 UrlLoader.load()。
当发生未捕获的异常时,我正在处理 UncaughtErrorEvent.UNCAUGHT_ERROR 以停止应用程序。UrlLoader.load() 在您正常连接互联网时工作。
但是,如果您的浏览器加载应用程序后与互联网的连接丢失,
SecurityError 在调用 UrlLoader.load() 时发生。
我无法使用 try catch 捕获 SecurityError 并且发生了 UNCAUGHT_ERROR 并且它停止了我的应用程序。
我不想在UrlLoader.load() 失败时停止应用程序,因为我只是使用UrlLoader.load() 记录一些不重要的信息。
而且我认为如果加载时间过长也会出现超时错误。
而且我也不想因为超时错误而停止我的应用程序。
我该如何解决这些问题?
还有更多其他类型的错误会发生并停止我的应用程序吗?
【问题讨论】:
-
未捕获的异常是什么意思,因为它总是会发现任何类型的异常或错误,然后它将停止您的应用程序。如果你想防止安全错误,那么你应该尝试 IOErrorEvent.IO_ERROR。你能说清楚未捕获的异常吗?
-
@SwatiSingh 感谢您的评论。未捕获的异常只是停止进程而不是应用程序。应用程序只是停止响应用户输入,用户无法理解应用程序是否停止。因此,我通过清除所有对象来停止应用程序,并在发生 UncaughtErrorEvent.UNCAUGHT_ERROR 时在屏幕上显示错误消息。如果我不通过处理 UncaughtErrorEvent.UNCAUGHT_ERROR 来停止应用程序,则 UrlLoader.load() 的 SecurityError 将被忽略,并且应用程序正常继续,因为 UrlLoader.load() 是异步函数并且不会影响应用程序的主进程。
标签: actionscript-3 exception-handling urlloader uncaught-exception