在windowsphone 8/8.1 Silverlight中,是否可以区分应用程序是由用户关闭还是在后台终止

本文关键字:应用程序 用户 终止 后台 windowsphone Silverlight 是否 | 更新日期: 2023-09-27 18:30:03

我有一个要求,如果windows phone应用程序在后台终止,我想在应用程序再次启动时显示用户离开的同一页面。

然而,如果用户关闭应用程序,我必须显示登录页面。

由于操作系统资源需求,windows phone silverlight应用程序是否可能在后台终止,类似于windows平板电脑应用程序?我从来没有看到windows手机的silverlight应用程序在后台被终止,我可以看到,当我们长按后退按钮时,最多显示7-8个最近的应用程序。即使我的应用程序不在最近的列表中,它也会恢复到同一页,并且我得到事件IsApplicationInstancePreserved为true。

然而,似乎没有办法确定应用程序是否被操作系统终止,这样我就可以导航到用户以前所在的页面。

关闭windows phone应用程序有两种方法
1) 按下第一页上的后退按钮,在这种情况下将触发关闭事件
2) 长按后退按钮并关闭最近应用程序列表中的应用程序,当用户长按并关闭时,将触发停用的事件
当用户按下windows按钮时,停用的事件将被触发,应用程序将进入后台。

在windowsphone 8/8.1 Silverlight中,是否可以区分应用程序是由用户关闭还是在后台终止

如果您的应用程序在后台终止/关闭,那么当您启动应用程序时,在启动方法中OnLaunchApplicationAsync(LaunchActivatedEventArgs args)args具有名为PreviousExecutionState的属性,该属性是ApplicationExecutionState类型的枚举,并具有以下值:

public enum ApplicationExecutionState
{
    NotRunning = 0,
    Running = 1,
    Suspended = 2,
    Terminated = 3,
    ClosedByUser = 4,
}

希望这能有所帮助!