Estrategia de la aplicación de Android para realizar un seguimiento de una sesión de inicio de sesión
Tengo algún script PHP que inicia sesión y devuelve una matriz JSON con un ID de sesión si el inicio de sesión fue satisfactorio.
En mi aplicación, quiero iniciar sesión en la portada y continuar a través de la aplicación que se está registrando. He creado una clase singleton que contiene un ID de sesión (junto con algunos otros campos) recibidos desde el JSON desde la página PHP. El campo de este objeto singleton "session_id" se verifica dependiendo de lo que haga el usuario.
- Cómo resolver Session 'app': error?
- Funcionalidad de cierre de sesión en android
- Android: inicia sesión en el sitio web y conserva sesión / cookie mediante DefaultHttpClient
- Inicio de sesión de Android - Mejor implementación
- Parámetros incorrectos: BadParametersError: Los parámetros eran incorrectos. Queríamos capacidades requeridas en la cuadrícula de Selenium mientras ejecuta Appium
Si el usuario desea cerrar la sesión, entonces el session_id sólo se establece en null y se desconecta.
También uso la biblioteca HttpURLConnection para POST el nombre de usuario / contraseña al iniciar sesión.
¿Es esto un enfoque bastante decente para manejar esta situación?
- Cómo utilizar la sesión para trabajar entre php webservices y android
- ¿Cómo mantener el inicio de sesión del servidor en toda la aplicación nativa de Android?
- Gestión de sesiones de Android
- Disminuir la verbosidad del registro interno de ORMlite o deshabilitarla
- Publicar en pared FB Utilizar SDK 3.0
- Patrón de diseño de inicio de sesión de aplicaciones de Android
- Reemplazo de código de Facebook obsoleto para Android
- Implementar reintento Cuando la lógica
Aquí hay algunas cosas que usted debe pensar:
- Una vez que haya autenticado al usuario y almacenado el session_id localmente, envíe el session_id en el encabezado de cada una de sus solicitudes http. De esta forma, no enviarás las credenciales con cada solicitud, sino con el identificador de la sesión. Y si algo sucede en el lado del servidor a la sesión, la transacción no será permitida.
- Cuando cierre la sesión, no elimine simplemente el session_id en el lado de su aplicación (cliente). Enviar un cierre de sesión en el servidor, así para que la sesión se puede matar lado del servidor.
- Si la sesión se cancela en el lado del servidor, querrá hacer 1 de 2 cosas A) pedir al usuario que vuelva a iniciar sesión. B) Utilice las credenciales de la tienda para volver a iniciar sesión, cree una nueva sesión id y guárdela de nuevo en su singleton.
Esto garantizará un poco más de seguridad y funcionalidad que simplemente borrar la identificación de la sesión en su lado de la aplicación.
Esta estrategia probablemente funcionará. En una aplicación en la que trabajé, almacené los datos de retorno de inicio de sesión en las preferencias de android compartidas. Si el usuario ha cerrado la sesión, he borrado las preferencias. Esto permitió que los usuarios permanezcan conectados, incluso si cerraron la aplicación y regresaron más tarde. Tenía un token de autenticación que comprobé si el inicio de sesión del usuario seguía siendo válido.
¿Cómo planea manejar los inicios de sesión persistentes? ¿Caduca el ID de sesión? Es posible que desee pensar en estas situaciones de lo contrario, una vez que un usuario está conectado, se registrarán en forma permanente o siempre y cuando la aplicación esté abierta.
- Android obtener la posición del elemento seleccionado en gridview
- Android: Copia de un texto en el portapapeles para API <11