Fundamentos Programación Android

android

Fundamentos programación Android: Actividades, Tareas, Procesos e Hilos

Actividades y tareas

Las actividades conforme se van ejecutando van apilandose en una pila. Cuando finalizamos una actividad, con el método finish() o con la tecla atrás del teléfono, la actividad se extrae de la pila, quedando encima de la pila la actividad que se abrió anteriormente.

Si ejecutamos una actividad varias veces sin cerrarla, ésta aparecerá en la pila tantas veces como la hayamos ejecutado. La pila de actividades se envía al segundo plano cuando la aplicación pierde el foco, y vuelve al primer plano cuando la aplicación vuelve a tomar el control.

android

Fundamentos programación Android: Ciclo de vida de los componentes

Cada componente tiene un ciclo de vida distinto. Las superclases de estos componentes tienen métodos callback que les permiten reaccionar ante un cambio de estado. Cada método callback está obligado a llamar al mismo método de su padre.

Ciclo de vida de los Receiver

Tienen un ciclo de vida muy corto, ya que se activan al producirse un mensaje de difusión, que capturan con el método callback:

android

Fundamentos programación Android: Conceptos básicos y componentes

Conceptos básicos

Hemos visto que un proyecto Android está formado por varias carpetas estructuradas, pero lo que se instala en los dispositivos es un fichero con extensión .apk (application package).

Estos ficheros se generan con la herramienta apk (En el directorio tools del SDK) al terminar de compilar.

Las aplicaciones en Android tienen su propio entorno seguro de ejecución:

android

Fundamentos programación Android: Limpieza de Procesos

Android va destruyendo componentes inactivos para liberar memória, pero los elminia teniendo en cuenta cual es el de menor importancia:

  • Los primeros en ser elmininados son los procesos vacíos (Son aplicaciones cerradas que se mantienen en memoria para cargar rápidamente la aplicación la proxima vez que se abra.)
  • Procesos en segundo plano, estos son las aplicaciones que ya han ejecutado su método onStop(), Android confecciona una lista con los procesos en este estado y elimina en primer lugar el más antiguo.
  • Despues elminina los procesos de servicio. (si sigue necesitando más memoria.)
  • Si aún necesita más memoria, elimina los procesos pausados.
  • Si con esto sigue necesitando, finalmente elimina el proceso en primer plano.