7

WMAppManifest.xml で ActivationPolicy="Resume" を設定すると、ページ タイル ナビゲーション (ナビゲーション URL) が廃棄状態で機能せず、最後のバック スタック ページ (URL) がリロードされます。ページをリロードしなくても、休眠状態で問題なく動作します。このプロパティを設定しない場合 (ActivationPolicy="Resume")、[休眠状態と廃棄状態] の両方の状態でページをリロードします。

しかし、そのプロパティを設定するときに、どうすればセカンダリ URL へのナビゲーションを実現できますか。

私を助けてください 。

4

2 に答える 2

23

アプリで Fast App Resume をサポートするために必要な手順は、ActivationPolicy="Resume" を追加することだけではありません。その1つのプロパティのみを設定した場合、あなたが説明している動作は正常であると思います。「Fast App Resume」を実装するにはいくつかの方法があると思いますが、これが最も簡単な方法であることがわかりました。

先ほど説明したようにアクティベーション ポリシーを設定し、次の手順を実行します。

「App」クラスの App.xaml.cs に移動します。

   private bool reset

次に、RootFrame を初期化する InitializePhoneApplication のメソッドが必要です。これを追加:

RootFrame.Navigating += RootFrame_Navigating;
RootFrame.Navigated += RootFrame_Navigated;

次に、これらのメソッドを追加できます。

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;
}

これを適切に実装すると、アプリは最後に表示していたページから再開するはずです。

于 2013-01-16T15:58:45.953 に答える
2

ここでも同じ問題。Fast App Resume が有効になっている WP8 アプリケーションを入手しました。アプリ内の特定のページを指すタイルをピン留めできます。アプリが一時停止されているときは正常に機能しますが、アプリが廃棄されている場合、セカンダリ タイルをクリックするとメイン タイルをクリックした場合と同じ効果があります。

NavigationMode == BackおよびUri == /MainPage.xamlで RootFrameNavigating イベントを 1 つだけ受け取ります。アプリは、アプリを一時停止する前にあった前のページを表示します。

これは、この特定のシナリオのプラットフォームの実際のバグであると思います-アプリの高速再開+廃棄されたアプリ+ピン留めされたタイルからのナビゲーション、開発者として解決できません。

于 2013-03-15T09:41:48.617 に答える