如果由操作系统终止,启动metro应用程序的正确方法是什么?

时间:2013-07-24 13:28:40

标签: c# microsoft-metro windows-store-apps application-lifecycle

如果应用程序被系统终止,我希望应用程序返回到用户最后使用的任何页面,让他们从中断的地方继续。我遇到的问题是 1.我的应用程序有2个页面,一个数据页面和一个登录页面,那么如何判断用户最后一个页面? 2.当我从终止状态启动时,我试图让它导航到数据页面:

    if (args.PreviousExecutionState == ApplicationExecutionState.Terminated)
            {
                rootFrame.Navigate(typeof(Messages), args.Arguments);
            }

根据http://msdn.microsoft.com/en-us/library/windows/apps/hh464925.aspx,我应该加载我保存的数据,好像我正在从暂停状态恢复,但是在我的该页面的LoadState方法中,

    if (pageState == null)
从终止状态恢复时,

检查始终为true。问题是在启动时传递的eventargs将NavigationMode设置为New,因此它的处理方式与第一次看到页面时相同。我该怎么做以解决这个问题,以便加载保存的数据?

1 个答案:

答案 0 :(得分:1)

原来你需要使用SuspensionManager

http://msdn.microsoft.com/en-us/library/windows/apps/hh986968.aspx

解决这两个问题。