2012-03-19 25 views
7

He hecho una aplicación para Android que funciona bien. Implementé la funcionalidad de inicio de sesión en él. ¿Alguien puede guiarme sobre cómo almacenar las credenciales de inicio de sesión del usuario para que el usuario no tenga que iniciar sesión cada vez que inicie la aplicación y, cuando el usuario cierre la sesión, borre la información de inicio de sesión almacenada.Cómo guardar la información de inicio de sesión localmente en android

En realidad, quiero que el usuario no tenga que ingresar la información de inicio de sesión cada vez que inicia la aplicación. ¿Cómo puedo hacer esto?

Respuesta

28

Uso del valor de la tienda sharepreference. Estoy pegando el código aquí ... usarlo.

Crear acción preferente:

SharedPreferences sp=getSharedPreferences("Login", MODE_PRIVATE); 
SharedPreferences.Editor Ed=sp.edit(); 
Ed.putString("Unm",Value);    
Ed.putString("Psw",Value); 
Ed.commit(); 

obtener el valor de la acción preferente:

SharedPreferences sp1=this.getSharedPreferences("Login", MODE_PRIVATE); 

String unm=sp1.getString("Unm", null);  
String pass = sp1.getString("Psw", null); 

Al cierre de sesión de usuario a continuación, se puede establecer valor nulo en sharedpreference.

+0

para despejar el valor sharedpreference también. –

+0

En realidad, quiero que el usuario no tenga que ingresar la información de inicio de sesión cada vez que inicia la aplicación. Utilicé el código mientras escribe aquí pero no resolvió mi problema ............ – nikki

+0

de acuerdo, entonces puede establecer un valor booleano en la preferencia de compartir si islogin es verdadero, luego se mueve a la siguiente pantalla. – Hasmukh

0

Crear archivo de base de datos externo con tabla de credenciales en esta tabla crear columnas apropiadas como nombre de usuario, contraseña, etc.. Si tiene usuarios registrados, almacene esos datos de usuario en la tabla de credenciales.Finalmente copie esa base de datos en la carpeta assests y luego use la clase SqliteOpenHelper copie esa base de datos externa a la memoria del teléfono. Aquí tiene que mantener la página de registro con las condiciones. Si el usuario completa el procedimiento de registro con sus condiciones, guarde sus datos en la tabla de credenciales. Cuando el usuario quiera iniciar sesión en la aplicación, compruebe el nombre de usuario y contraseña en la tabla de credenciales

0

Usted puede utilizar cada uno de los métodos siguientes: - SharedPreferences - Base de datos - Sistema de archivos

Por supuesto, cada método tiene ventajas y desventajas.

1

Creo que la mejor solución es la Preferencia compartida. Es inútil crear una base de datos completa y consultarla para una sola entrada. y el sistema de archivos no proporciona una solución estructurada. (pares de valores clave)

Para IU, creo que usted debe tener dos fragmentos si el usuario está registrado mostrarle La y si no al código postal MainFragmentLoginFragment

+0

No se olvide de proteger los datos que guarda allí. – MarkySmarky

Cuestiones relacionadas