En el artículo anterior vimos los conceptos y componentes básicos de una aplicación en Android. En este caso toca el turno abordar a detalle el ciclo de vida de la aplicación.
Durante su vida, cada actividad de una aplicación Android puede estar en uno de diversos estados. Nosotros como desarrolladores no tenemos control sobre el estado en el cual se encuentra la aplicación en cierto momento ya que todo es administrado por el sistema. Sin embargo, Android emite una notificación cada vez que el estado de una aplicación está a punto de cambiar.
Para esta tarea existen los métodos onXXX() de la clase Activity (donde XXX es el estado al cual pasará la aplicación), dichos métodos deben ser sobreescritos con el fin de realizar las tareas necesarias acorde al estado actual de la aplicación.
El listado de los métodos / estados (como puedes verlo en el diagrama) es el siguiente:
- onCreate(): Es llamado cuando la actividad arranca por primera vez. Puede ser utilizado para realizar tareas de inicialización como crear la interfaz de usuario.
- onStart(): Este método indica que la actividad está a punto de ser mostrada al usuario.
- onResume(): Es llamado cuando la actividad puede comenzar a interactuar con el usuario. Este es el lugar idóneo para comenzar las animaciones y sonidos.
- onPause(): Este método se ejecuta cuando la actividad está a punto de pasar a segundo plano, usualmente debido a que otra actividad ha sido lanzada frente a ella. En este lugar es donde se deben salvar los datos persistentes de la aplicación tales como los registros de una base de datos que están siendo editados.
- onStop(): Este método es llamado cuando la actividad ya no está visible para el usuario y no será requerida por un tiempo. Si la memoria del sistema es poca, puede ser que el método onStop() nunca sea llamado (el sistema puede simplemente terminar con el proceso).
- onRestart(): Si este método es llamado significa que una actividad que estaba detenida está volviendo a ser desplegada al usuario.
- onDestroy(): Es llamado justo antes de que la actividad sea destruida. Si la memoria del sistema es poca, puede ser que el método onStop() nunca sea llamado (el sistema puede simplemente terminar con el proceso).
- onSaveInstanceState(): Android mandará llamar este método para permitir a la actividad el guardar un estatus por instancia (como la posición del cursor en un campo de texto). Usualmente no será necesario reescribir este método ya que la implementación por defecto guarda el estado de todos los controles de la interfaz de manera automática.
- onRestoreInstanceState(): Este método es llamado cuando cuando la actividad esta siendo reiniciada desde un estatus previamente almacenado en onSaveInstanceState(). La implementación por defecto restaura el estado de la interfaz del usuario completamente.
Hasta aquí llegamos en este artículo. Si tienes dudas, preguntas o comentarios te invito a que lo compartas al final del artículo en la sección de comentarios.
Si la información te fue útil te invito a que me ayudes a difundirla desde los botones sociales (Twitter, Facebook, Google+).
De igual manera puedes suscribirte al blog para que los nuevos artículos lleguen a tu bandeja de correo o lector de Feeds favorito.
Comentarios
Publicar un comentario
Este es un espacio abierto, puedes escribir lo que gustes respetando los siguientes puntos:
1.- Lo que escribas esté relacionado con el post, si gustas contactarme puedes hacerlo aqui.
2.- Todo es cuestionable, aunque ten en cuenta que existen formas de hacerlo, evita las agresiones y revisa tu lenguaje antes de publicar un comentario.
3.- Siempre hay tres verdades: tu verdad, mi verdad y la verdad, por lo que opiniones diferentes no necesariamente son equivocadas.
4.- Los comentarios son una forma de discusión abierta, por lo que al publicar uno, implícitamente entras a una discusión, con todo lo que esto representa.
5. Me reservo el derecho de eliminar comentarios que no respeten las condiciones mencionadas anteriormente.
Toma en cuenta que puedes utilizar emoticones en tu comentario, para ver una lista de los disponibles da clic en este enlace.