【问题标题】:Flex/AIR - Displaying ActionScript errors in a release applicationFlex/AIR - 在发布应用程序中显示 ActionScript 错误
【发布时间】:2026-01-26 05:30:01
【问题描述】:

当我在调试模式下运行 Flex/AIR 应用程序并发生错误时,我看到:

TypeError: Error #1009: Cannot access a property or method of a null object reference.

但是,当应用程序作为发布版本安装并发生相同的错误时,我看不到错误消息。

我的应用程序是否可以将这些类型的错误保存到日志文件或通过电子邮件发送给我?

【问题讨论】:

    标签: actionscript-3 apache-flex error-handling air flex4.6


    【解决方案1】:

    我已经设法使用UncaughtErrorEventairxmail 类自己实现了这一点。

    这是一个将 UncaughtError 事件添加到 loaderInfo 的简单案例(在由 FlexEvent.APPLICATION_COMPLETE 事件调用的方法中)。使用这两个类,应用程序会在运行时错误发生时将它们通过电子邮件发送给我,仅在发布模式下,因为在调试模式下不会触发 UncaughtError 事件。

    【讨论】:

      【解决方案2】:

      如果要记录未捕获的错误,可以使用 uncaughtError 事件。

      loaderInfo.uncaughtErrorEvents.addEventListener(UncaughtErrorEvent.UNCAUGHT_ERROR,handleGlobalErrors);
      
      function handleGlobalErrors( evt : UncaughtErrorEvent ):void
      {
          //code that saves error to log or send by email..
          evt.preventDefault();
      }
      

      您可以在此处http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/events/UncaughtErrorEvent.html 找到有关此功能的更多信息。

      还要注意,如果您在调试模式下使用它,所有错误都将被 handleGlobalErrors 函数捕获,因此请记住这一点。

      【讨论】:

        最近更新 更多