¿Cuál es el mecanismo operativo de Android? ¿Cómo funciona un teléfono Android?
Android se basa en el kernel de Linux y muchos sistemas también se basan en el kernel de Linux. Pero lo especial de Android, además de sus características de desarrollo, es que el comportamiento del programa en tiempo de ejecución es muy diferente de los mecanismos de ejecución del programa a los que he estado expuesto en el pasado. En una PC tradicional o en algunos otros teléfonos móviles, el usuario tiene control absoluto sobre la aplicación. Seleccionar opciones como "Salir" o "Cerrar" en el menú del sistema de la aplicación cancelará directamente el proceso, pero en el sistema Android no es así. En Android, el ciclo de vida de una aplicación no está controlado directamente por la aplicación en sí, sino por el sistema. Cuando el sistema necesita liberar memoria para ejecutar un nuevo proceso o garantizar la ejecución sin problemas de ciertos procesos en segundo plano y procesos front-end. Se liberará la memoria correspondiente. Los recursos de la aplicación, este proceso de liberación tiene un nivel de importancia.
La jerarquía de procesos en Android es la siguiente (de mayor a menor importancia):
1. Como sugiere el nombre, el proceso de front-end es el proceso que se muestra actualmente en la pantalla e interactúa con el usuario. La cantidad de procesos de front-end en el sistema es muy pequeña y este proceso tiene el mayor impacto en la experiencia del usuario. Sólo la memoria del sistema es lo suficientemente escasa para mantener una comunicación básica con el usuario. El proceso de front-end se destruirá solo al interactuar. Por lo tanto este proceso es de la mayor importancia.
2. Proceso visible. El proceso visible también tiene una interfaz visual, pero actualmente no es la interfaz de nivel superior (la interfaz de nivel superior está en el proceso de front-end. El proceso visible generalmente llama a OnPause (). El proceso de front-end, pero aún tiene un gran impacto en la interacción, porque el usuario puede cambiar a él en cualquier momento, por lo que el sistema no lo destruirá fácilmente.
3.Proceso de servicio. Un proceso de servicio es un Servicio. Llama a startService, que es el proceso demonio en UNIX. Es invisible para el usuario, pero garantiza que se monitoreen algunos eventos importantes o se mantengan ciertos estados, como la transmisión de datos de la red y la reproducción de música de fondo. Este tipo de proceso se destruye cuando no hay memoria suficiente y para garantizar el progreso fluido de la interacción front-end.
4. Proceso en segundo plano. El proceso en segundo plano aquí puede confundirse con el proceso en segundo plano en el sentido general. Cabe señalar que el proceso en segundo plano en Android llama a OnStop (), lo que puede entenderse en el sentido de que el usuario no desea interactuar con este proceso. Por el momento, el proceso en segundo plano aquí significa "ser destruido".
5. Proceso vacío. Este es un mecanismo de almacenamiento en caché del sistema, que en realidad es el caparazón de un proceso. Cuando se crea un nuevo proceso, este proceso vacío puede acelerar la creación del proceso. Cuando la memoria del sistema es insuficiente, el proceso vacío se destruye primero.
El nivel de importancia de los procesos en Android