在AIR应用程序中处理应用程序退出事件

时间:2009-02-26 06:05:11

标签: flex air

我有一个AIR应用程序,定义了以下EXIT处理程序:

  NativeApplication.nativeApplication.addEventListener(Event.EXITING, applicationExitHandler); 

applicationExitHandler通过HttpService发出异步注销请求。由于这是异步的,因此看起来应用程序的exit()方法在实际发出注销请求之前返回。

如何在exit()返回之前确保请求完成?

1 个答案:

答案 0 :(得分:6)

覆盖默认行为。取消此活动。然后调用该服务。为您的服务添加请求处理程序/错误处理程序。完成后,将调用结果或错误处理程序。这是您可以安全地退出应用程序(当然,如果注销失败,您可能需要额外的处理)。来自docs

  

<强>离开    在应用程序退出序列启动时调度。

     

当操作系统启动应用程序退出时,将调度exiting事件;例如,当用户在Mac OS X上发出Cmd-Q键序列时,或者当NativeApplication对象的autoExit属性为true并且最后一个应用程序窗口关闭时。取消此事件会阻止应用程序退出。

     

注意:调用NativeApplication exit()方法不会导致调度exiting事件。要警告即将退出的组件,请在调用exit()之前调度exiting事件   Event.EXITING常量定义现有事件对象的type属性的值。