¿Cómo guardar el estado de inicio de sesión en Windows Phone 8?

Estoy tratando de crear una aplicación para WP8 con una página de inicio de sesión. Quiero guardar el estado de inicio de sesión del usuario para que el usuario final no tenga que volver a escribir sus credenciales, mi aplicación es una página HTML incrustada en el control del navegador web. ¿Alguien puede ayudarme a guardar el estado de inicio de sesión?

preguntado el 04 de septiembre de 13 a las 02:09

1 Respuestas

En primer lugar, si el sitio web en el que intenta iniciar sesión no es suyo, entonces no se puede hacer lo que solicita.

Ahora suponiendo que está utilizando un WebBrowser en su código XAML y que el sitio web en el que inicia sesión es suyo, digamos que tiene un método de inicio de sesión exitoso:

ahí tienes que llamar a este código:

window.external.notify("LogInSuccess");

Entonces tu WebBrowser debería ser así:

<phone:WebBrowser HorizontalAlignment="Stretch" Name="webBrowserControl" VerticalAlignment="Stretch" IsScriptEnabled="True" ScriptNotify="JavaScriptNotify"/>

Y el método que se llama en el archivo .cs en realidad debería almacenar un valor de éxito en un almacenamiento aislado que se verificará cada vez que abra la página de inicio de sesión:

void JavaScriptNotify(Object sender, NotifyEventArgs notifyArgs)
{
    // Check if the value is correct:
    if (notifyArgs.Value.Equals("LogInSuccess"))
    {
        // Save State to Isolated Storage
        var settings = IsolatedStorageSettings.ApplicationSettings;
        settings.Add("loginStatus ", "success");
    }
}

Finalmente, debe anular el método constructor de su página de inicio de sesión a lo siguiente:

página de inicio de sesión pública () { var loginStatus = configuración ["loginStatus "]. ToString (); if (loginStatus.Equals(success)) { NavigationService.Navigate(nuevo Uri("/PageAfterLoginPage.xaml, UriKind.Relative)); } }

Y para que esto sea completo anular el OnNavigatedTo método de PageAfterLoginPage.xaml y agregue el siguiente código:

NavigationService.RemoveBackEntry();

La última parte simplemente eliminará la página de inicio de sesión de la pila para que cuando el usuario haga clic en el botón Atrás no vuelva a navegar a esa pantalla.

Respondido el 04 de Septiembre de 13 a las 22:09

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.