La mayoría de las aplicaciones de Android y iPhone que he visto usan una pantalla inicial o un cuadro de diálogo para solicitar credenciales. Creo que es engorroso para el usuario tener que volver a ingresar su nombre / contraseña a menudo, por lo que almacenar esa información tiene sentido desde una perspectiva de usabilidad.
El consejo de la ( guía de desarrollo de Android ) es:
En general, recomendamos minimizar la frecuencia de solicitud de credenciales de usuario, para que los ataques de phishing sean más visibles y menos propensos a tener éxito. En su lugar, use un token de autorización y actualícelo.
Siempre que sea posible, el nombre de usuario y la contraseña no deben almacenarse en el dispositivo. En su lugar, realice la autenticación inicial utilizando el nombre de usuario y la contraseña proporcionados por el usuario, y luego use un token de autorización específico de servicio de corta duración.
Usar el AccountManger es la mejor opción para almacenar credenciales. El SampleSyncAdapter proporciona un ejemplo de cómo usarlo.
Si esta no es una opción para usted por alguna razón, puede recurrir a las credenciales persistentes utilizando el mecanismo de Preferencias . Otras aplicaciones no podrán acceder a sus preferencias, por lo que la información del usuario no se expone fácilmente.