¿Cómo se hace Session Management en Android?

En Android, la gestión de la sesión se realiza mediante algunas técnicas de almacenamiento de datos. Estos datos se pueden almacenar en algunas variables globales, bases de datos o preferencias de la aplicación.

Pero hay un problema con las variables globales. Las variables globales solo pueden conservar los datos hasta que se abra la aplicación. Una vez que la aplicación se cierra, las variables globales se destruyen y sus valores se pierden.

Los datos almacenados en la base de datos y las preferencias de la aplicación no se pierden cuando se cierra la aplicación.

Por lo tanto, estos se utilizan para la gestión de sesiones. Pero el almacenamiento y acceso a los datos en la base de datos es más lento en comparación con las preferencias.

Por esta razón, las preferencias se utilizan para la gestión de sesiones.

En el contexto de Android, estas preferencias se conocen como SharedPreferences. Esto permite un almacenamiento, acceso y actualización de datos más rápido.

SharedPreferences se utilizan normalmente para almacenar la configuración de la aplicación.

Encuentre los pasos a continuación para usar las SharedPreferences en la aplicación para almacenar y acceder a los datos para mantener la sesión.

1. Inicialice el Editor de SharedPreferences para almacenar datos en las SharedPreferences de la aplicación.

SharedPreferences prefs = getApplicationContext (). GetSharedPreferences ("preferences-key-name", MODE_PRIVATE); SharedPreferences.Editor editor = prefs.edit ();

2. Ponga el valor en el objeto editor para guardar en las SharedPreferences. Estos valores pueden ser del tipo: String, boolean, int, float, etc. Después de agregar los valores, ejecute el método commit () del Editor para guardar los valores.

editor.putString ("clave-nombre de usuario", "John Doe"); editor.commit ();

3. Para recuperar los datos de las SharedPreferences, no es necesario el objeto Editor. Simplemente obtenga la cadena requerida o cualquier otro valor utilizando el método correspondiente.

SharedPreferences prefs = getApplicationContext (). GetSharedPreferences ("preferences-key-name", MODE_PRIVATE); String username = prefs.getString ("clave-nombre de usuario", "valor predeterminado");

El segundo parámetro del método getString () es el valor predeterminado que se devuelve, en caso de que no haya ningún valor guardado en las preferencias correspondientes a esa clave.

4. Para borrar una clave de SharedPreference en particular, use el método remove ().

SharedPreferences prefs = getApplicationContext (). GetSharedPreferences ("preferences-key-name", MODE_PRIVATE); SharedPreferences.Editor editor = prefs.edit (); editor.remove ("clave-nombre de usuario"); editor.commit ();

5. Para borrar todas las preferencias compartidas guardadas, use el método clear ().

SharedPreferences prefs = getApplicationContext (). GetSharedPreferences ("preferences-key-name", MODE_PRIVATE); SharedPreferences.Editor editor = prefs.edit (); editor.clear (); editor.commit ();

A continuación encontrará el ejemplo de uso de este SharedPreferences para la administración de sesión:

Cuando un usuario inicie sesión en la aplicación, guarde el nombre de usuario o cualquier otro valor correspondiente del usuario en SharedPreferences. Utilice este valor guardado para volver a iniciar sesión en el usuario cuando se vuelva a abrir la aplicación o se puede acceder a este valor en cualquier actividad a través de la aplicación para obtener el nombre de usuario. Cuando el usuario haga clic en Cerrar sesión, borre los campos relacionados con el usuario para cerrar la sesión del usuario.

Leave a Reply

Your email address will not be published. Required fields are marked *