实施登录/注销系统

时间:2012-01-17 09:27:24

标签: windows-phone-7

我对WP7应用程序有疑问。我希望用户可以登录应用程序,做一些事情并注销。

现在,然后一个新用户拿到手机,就不可能进入旧用户的会话(只需按回去,直到用户看到登录的上一个用户的实习数据)。 怎么做到这个?

最好的事情是,当用户按下后退按钮时,它将被隐藏到应用的第一页。问题是,将会有一个循环,应用程序将无法通过认证,因为它无法退出。

以下是概述:

loginPage(退出应用后无法返回) - > internPage(登出并返回登录页面的可能性)

4 个答案:

答案 0 :(得分:3)

您可以使用NavigationService.RemoveBackEntry:

清除后台堆栈
while (this.NavigationService.BackStack.Any())
{
    this.NavigationService.RemoveBackEntry();
}

将它放在LoginPage的OnNavigatedTo中,因此按回此页面将退出应用程序。如果LoginPage是用户在启动应用程序时看到的第一个页面(因此也就是应用程序主页面),它应该通过认证。

答案 1 :(得分:1)

尝试非线性导航服务,返回后会正确展开您的历史记录,当您退出主页时,它将正确退出您的应用。

http://create.msdn.com/en-US/education/catalog/article/nln-serv-wp7

为什么不让主页显示不同用户的图标,点击该用户会询问他们的密码?

答案 2 :(得分:0)

您无法更改应用程序的导航流程,以便后退按钮将您带到第一页。这将导致您未通过市场认证。

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

您可以在此处阅读有关生命周期的信息:

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

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

答案 3 :(得分:0)

最好的方法是创建单独的视图,如UserControl,然后在需要用户登录时将其显示为Popup。 这也是微软推荐的方式,邹不会遇到这种导航问题。

这样的事情: enter link description here