Windows phone 7 当用户首次使用windows应用程序时,必须打开特定页面
我正在开发一个windows 7 phone应用程序,其中我希望在用户首次在其手机中使用应用程序时,显示一个特定页面以及用户需要接受的隐私策略。谁能告诉我怎么做。可以找到这个问题的可能答案。由于您希望您的页面只打开一次,因此,如果用户接受或不接受策略,我建议保存一个布尔值。此功能可采用两种方法。第一种方法是始终从隐私策略页面开始,但覆盖OnNavigatedTo方法以检查该策略之前是否已被接受。如果有,请导航到您的主页。在主页内,删除所有backstack条目 隐私政策页面Windows phone 7 当用户首次使用windows应用程序时,必须打开特定页面,windows-phone-7,Windows Phone 7,我正在开发一个windows 7 phone应用程序,其中我希望在用户首次在其手机中使用应用程序时,显示一个特定页面以及用户需要接受的隐私策略。谁能告诉我怎么做。可以找到这个问题的可能答案。由于您希望您的页面只打开一次,因此,如果用户接受或不接受策略,我建议保存一个布尔值。此功能可采用两种方法。第一种方法是始终从隐私策略页面开始,但覆盖OnNavigatedTo方法以检查该策略之前是否已被接受。如果有,请导航到您的主页。在主页内,删除所有backstack条目 隐私政策页面 protected
protected override void OnNavigatedTo(NavigationEventArgs e)
{
// have the accepted the policy?
var settings = IsolatedStorageSettings.ApplicationSettings;
bool accepted;
if(settings.TryGetValue("PolicyAccepted", out accepted))
{
if (accepted)
{
NavigationService.Navigate(new Uri("MainPage.xaml", UriKind.Relative));
}
}
}
private void OnAcceptButtonClick(object sender, RoutedEventArgs routedEventArgs)
{
var settings = IsolatedStorageSettings.ApplicationSettings;
settings["PolicyAccepted"] = true;
settings.Save();
NavigationService.Navigate(new Uri("MainPage.xaml", UriKind.Relative));
}
然后在主页上,删除backbackback
protected override void OnNavigatedTo(NavigationEventArgs e)
{
while (NavigationService.CanGoBack) NavigationService.RemoveBackEntry();
}
第二种方法是使用本文所述的UriMapper。感谢您的想法@ShawnKendrot。它工作得很好。再次执行应用程序是我第一次使用隐私政策。但这类似于在手机中再次安装应用程序。所以我们第一次得到了隐私政策。我的理解正确吗?使用这种方法,您应该只在第一次重新安装应用程序时获得策略页面。如果你想让它只询问一次,不管应用程序安装了多少次,你都需要将接受情况存储在服务器中