快速应用程序恢复Windows Phone 8中的问题

Kat*_*hir 7 windows-phone windows-phone-8

当我在WMAppManifest.xml页面中设置ActivationPolicy ="Resume"时,磁贴导航(导航URL)在Tombstone状态下不起作用,它会重新加载最后一个堆栈页面(URL).它可以在休眠状态下正常工作,无需重新加载页面.如果不设置此属性(ActivationPolicy ="Resume"),则会在两种状态[休眠状态和逻辑删除状态]下重新加载页面.

但是,当我们设置该属性时,我们如何才能实现到辅助URL的导航.

请帮我 .

小智 23

添加ActivationPolicy ="Resume"并不是让您的应用支持Fast App Resume所需的唯一步骤.我相信当你只设置一个属性时,你描述的行为是正常的.我认为有几种方法可以实现"快速应用程序恢复",但我发现这是最简单的方法.

像刚刚描述的那样设置激活策略,然后执行以下操作:

进入App.xaml.cs中的"App"类添加:

   private bool reset
Run Code Online (Sandbox Code Playgroud)

然后,您应该有一个初始化RootFrame的InitializePhoneApplication方法.添加这个:

RootFrame.Navigating += RootFrame_Navigating;
RootFrame.Navigated += RootFrame_Navigated;
Run Code Online (Sandbox Code Playgroud)

然后你可以去添加这些方法:

void RootFrame_Navigating(object sender, NavigatingCancelEventArgs e)
{
    if (reset && e.IsCancelable && e.Uri.OriginalString == "/MainPage.xaml")
    {
        e.Cancel = true;
        reset = false;
    }
}

void RootFrame_Navigated(object sender, NavigationEventArgs e)
{
    reset = e.NavigationMode == NavigationMode.Reset;
}
Run Code Online (Sandbox Code Playgroud)

如果您正确实施此功能,您的应用应该从您所在的最后一页继续.