在UWP上运行的MAF应用程序关闭时,如何接收事件?

在UWP上运行的MAF应用程序关闭时,如何接收事件?,uwp,lifecycle,oracle-maf,Uwp,Lifecycle,Oracle Maf,我立刻想到的答案是在LifeCycleListenerImpl类中使用实现停止和停用方法 public void stop() { // code } 然而,当我们在LifeCycleListenerImpl类中提供这两个方法的实现并在Windows 10上部署我们的MAF应用程序时,我们发现: -当应用程序关闭时,既不调用stop也不调用deactivate。 -当应用程序最小化时,调用deactivate 除此之外,我们还有什么需要做的吗 在LifeCycleListenerImp

我立刻想到的答案是在LifeCycleListenerImpl类中使用实现停止和停用方法

public void stop() {
    // code
}

然而,当我们在LifeCycleListenerImpl类中提供这两个方法的实现并在Windows 10上部署我们的MAF应用程序时,我们发现:

-当应用程序关闭时,既不调用stop也不调用deactivate。 -当应用程序最小化时,调用deactivate

除此之外,我们还有什么需要做的吗 在LifeCycleListenerImpl类中实现停止和停用方法

我认为,当用户即将关闭某个应用程序时,该应用程序会向用户显示一条确认消息,这是一个基本/常见的要求


请注意,我们使用的版本是:MAF 2.3.2,在windows 10上运行。

有两种类型的事件-挂起和终止

挂起-您不能中止它,但您可以有5秒的时间段 执行清理任务。 终止-您不能中止,也不能 时隙。 如果用户关闭-Alt+F4,关闭按钮等-应用程序,首先暂停事件已经发生,然后终止。您不能中止它,但您有5秒的时间段需要清理

您可以在UWP上获得有关此应用程序生命周期管理的更多详细信息。请参阅“应用程序关闭”一节


感谢您提供有关UWP应用程序生命周期的详细信息。但是,我们仅使用Oracle Mobile application framework进行编程,无法控制UWP生命周期。MAF或任何其他框架都无法覆盖UWP应用程序生命周期的基本行为。如果MAF不能正确处理它,您可能需要实现它。
public void deactivate() {
    // Add code here...
    // need to implement shutdown sync tasks here.
}