15 votos

¿Cómo se queda whatsapp en segundo plano sin cerrarse?

Normalmente mata los procesos en segundo plano si no tienen una notificación persistente. Por qué aplicaciones como WhatsApp y Facebook no se matan?

3 votos

Porque dirigen un servicio, diría yo :) No estoy usando WA o FB, así que no puedo estar seguro aquí: Para aumentar su prioridad, las aplicaciones pueden registrar un servicio y tener un icono en la bandeja de notificaciones, por lo que el OOM killer las considera "más importantes" y "mata a otras cosas en su lugar", si es posible.

1 votos

Creo que tener un icono en la bandeja es irrelevante (mi WA no lo tiene de todos modos). Mientras el servicio se ejecute como en un "proceso de servicio" o superior prioridad.

9voto

AADTechnical Puntos 344

Android suele matar los procesos en segundo plano si no tienen un notificación persistente.

Bueno, la mayoría de las veces es así, pero Android OutOfMemory Killer (el componente dentro de Android responsable de matar procesos) utiliza una lógica y un criterio bastante complejos para matar aplicaciones y procesos que alojan estas aplicaciones.

En Android, cada aplicación se ejecuta en un proceso Linux. Cada Proceso Linux tiene una Máquina Virtual (Máquina Virtual Dalvik o Máquina Virtual ART) ejecutándose en su interior. Hay un límite en la memoria que un proceso puede demandar y es diferente para diferentes dispositivos y también difiere para teléfonos y tabletas.

Cuando Android se está quedando corto de espacio de memoria (puede ser debido a que muchas aplicaciones se ejecutan simultáneamente en un dispositivo) OutOfMemory asesino entra en escena y empezar a matar a los procesos de aplicaciones que se encuentran en fondo primero.

Ahora, aplicaciones como WhatsApp, Facebook utilizan algo llamado Servicio y mecanismos de notificación Push. El servicio permite que la aplicación ejecute código en segundo plano y, aunque la aplicación sea eliminada por el OOM Killer, Android puede reiniciar el servicio cuando haya suficiente memoria disponible para hacerlo funcionar.

¿Por qué no se matan aplicaciones como whatsapp y Facebook?

Esto no es cierto, ya que Android puede matar aplicaciones en función de su estado (como primer plano o segundo plano). Lo que ocurre es que las aplicaciones y sus componentes (como los servicios) se reinician cuando reciben notificaciones Push, para que el usuario pueda interactuar con la aplicación.

Así, como y cuando se recibe la notificación Push (significa mensaje de WhatsApp), Android puede reiniciar el componente de la aplicación eliminada (en este caso WhatsApp).

De esta forma, Android oculta al usuario los complejos detalles de la gestión de memoria y de procesos y se asegura de que el usuario pueda interactuar con una aplicación sin ningún problema.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X