flex 将运行时错误堆栈跟踪写入文件

发布于 2024-09-18 04:49:40 字数 289 浏览 6 评论 0原文

我正在开发 Flex + AIR 应用程序。在使用 Flash Builder 进行调试时,有时我会收到带有“继续”和“继续”的运行时错误对话框。 “关闭所有”按钮。但是当我发布 build(.air) &安装后运行应用程序。然后我在发布版本中没有得到相同的对话框。

我需要跟踪这些类型的运行时错误,因为我试图将它们作为日志写入文件。

我尝试使用 try catch &在 catch 块中写入文件,但我无法为未处理的异常或运行时错误找到任何出路。

有什么办法可以实现吗?

提前致谢。

I am developing a Flex + AIR application. While debugging using Flash Builder sometimes I get runtime errors dialog with 'continue' & 'dismiss all' buttons. But when I release a build(.air) & run the application after installing. Then I don't get the same dialog in the release build.

I need to track these types of runtime errors for that I am trying to write them to a file as logs.

I tried using try catch & writing to file in catch block, but I am not able to get any wayout for unhandled exceptions or runtime errors.

Is there any way to achieve it?

Thanks in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

秉烛思 2024-09-25 04:49:40

仅当您使用 Flash Player 的调试器版本时才会显示错误对话框。

您可以注册一个 UncaughtErrorEvent 处理程序,并使用 trace 或使用 日志记录 API

private function onApplicationComplete():void
{
    loaderInfo.uncaughtErrorEvents.addEventListener(
        UncaughtErrorEvent.UNCAUGHT_ERROR, onUncaughtError);
}

private function onUncaughtError(event:UncaughtErrorEvent):void
{
    trace(error);
}

The error dialog is displayed only if you use the debugger version of Flash Player.

You could register an UncaughtErrorEvent handler and log the errors with trace or with the logging API:

private function onApplicationComplete():void
{
    loaderInfo.uncaughtErrorEvents.addEventListener(
        UncaughtErrorEvent.UNCAUGHT_ERROR, onUncaughtError);
}

private function onUncaughtError(event:UncaughtErrorEvent):void
{
    trace(error);
}
贱人配狗天长地久 2024-09-25 04:49:40

您无法使用 Flash 调试播放器调试已编译的 AIR 应用程序,因为在进行发布版本时调试信息将被删除。您可以使用 De MonsterDebugger 之类的东西来输出错误信息,但通常在版本中显示错误信息是一个坏主意建造。您应该在发布之前进行测试。

You can't debug compiled AIR application with the Flash debug player because the debug information is removed when you make a release build. You can use something like De MonsterDebugger to output error information, but generally it's a bad idea to show error info in a release build. You should be testing prior to releasing.

浪荡不羁 2024-09-25 04:49:40

在 Flash 11.5+ 中,现在可以使用 error.getStackTrace() 在运行时获取堆栈跟踪,请参阅 http://renaun.com/blog/2012/09/getting-the-stack-trace-in-a-release-flash-player/

它在 Air 应用程序中为我工作。

In Flash 11.5+ it is now possible to get the stack trace at runtime using error.getStackTrace() see http://renaun.com/blog/2012/09/getting-the-stack-trace-in-a-release-flash-player/

It is working for me in an Air application.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文