2012-01-17 104 views
3

我有一个WP7应用程序的问题。我希望用户可以登录到应用程序,做一些事情并注销。实施登录/注销系统

现在,一个新用户拿到手机,不应该有可能进入旧用户的会话(只需按回直到用户看到之前登录的用户的实习生数据)。 如何做到这一点?

最好的事情是,当用户按下后退按钮时,它将被注销到应用程序的第一页。问题在于,会有一个循环,并且应用程序不会通过认证,因为它不可能退出。

这里是一个概述:

loginPage(不归路刚出应用程序) - > internPage(可能性注销并返回到loginPage)

回答

3

您可以清除使用NavigationService.RemoveBackEntry后退堆栈:

while (this.NavigationService.BackStack.Any()) 
{ 
    this.NavigationService.RemoveBackEntry(); 
} 

在LoginPage的的OnNavigatedTo将这个,所以逼人退此页面上会退出应用程序。如果LoginPage是用户在启动应用程序时看到的第一页(因此是应用程序主页),它应该通过认证。

0

你不能改变你的应用程序的导航流量,使得后退按钮会将您带到第一页。这将导致您无法通过市场认证。

您可以做的是处理应用程序生命周期事件,当用户离开您的应用程序,然后通过后退按钮导航回应用程序时,应用程序从休眠或墓碑状态重新启动。

你可以阅读这里的生命周期:

http://www.scottlogic.co.uk/blog/colin/2011/10/a-windows-phone-7-1-mango-mvvm-tombstoning-example/

您需要添加逻辑到Activated事件。此时,您可以显示一个逻辑Popup,确保用户必须重新输入凭据才能继续使用该应用程序。

0

最好的方法是像UserControl一样创建单独的视图,然后在需要用户登录时将其显示为Popup。 这也是Microsoft推荐的方式,并且zou不会导致此导航问题。

类似这样的: enter link description here