55 votos

¿Cuál es la forma correcta de cerrar aplicaciones en Android?

Soy nuevo en la plataforma Android, y esta es probablemente una pregunta tonta, pero...

¿Cómo se cierra una aplicación?

Cuando estoy en una aplicación, y quiero salir, simplemente hago clic en "Inicio" y sigo adelante, pero acabo de instalar una aplicación de Administrador de Tareas, y me he dado cuenta de que todo se deja en marcha.

¿Hay alguna forma de salir de las aplicaciones? ¿O tengo que usar el Administrador de Tareas cada vez que salgo de algo?

38voto

doekman Puntos 5187

Si sale de la aplicación con el botón BACK entonces llamará a onDestroy() en la Actividad actual, Si pulsa HOME sólo llama a onPause()
Sin embargo, no te preocupes por ello, las actividades no agotan la batería, simplemente se quedan en la memoria para poder abrirlas más rápido en el futuro.

Yo no recomendaría el uso de una de esas aplicaciones asesinas de tareas Android está diseñado para mantener esas cosas en la memoria por una razón, el uso de un asesino de tareas es sólo un servicio adicional tirando de su batería. Lo que hay que tener cuidado es con las aplicaciones que ejecutan servicios en segundo plano como twitter o clientes de correo electrónico tirando de sus servidores, cualquier buena aplicación que tenga un servicio como ese tendrá una opción para desactivarlo.

25voto

Joe Shaw Puntos 6386

Estoy bastante seguro de que todo lo que he leído dice que el Back es la forma correcta de salir de las aplicaciones.

Pulsando Home las deja funcionando en segundo plano hasta que Android decida que ya no son necesarias, lo que puede ser útil si sólo necesitas cambiar de aplicación para comprobar algo (si mantienes pulsado el botón de Inicio durante un par de segundos, obtendrás la lista de las aplicaciones que se han ejecutado recientemente y podrás volver a ellas en la mayoría de los teléfonos), pero si sales con el botón de retroceso le dices a la aplicación que quieres que se cierre.

13voto

Lasse V. Karlsen Puntos 148037

Algunas aplicaciones tienen una opción "Salir" en sus menús. La mayoría no.

No tienes que preocuparte por ello. Puedes ir a cualquier aplicación que necesites a continuación. Android hace un buen trabajo liberando recursos cuando es necesario.

Actualización : AndroidSpin hizo una investigación en el mundo real .

4voto

jmbouffard Puntos 1451

En Android, las aplicaciones nunca tienen que cerrarse y el sistema operativo se encarga de limpiar la memoria de las aplicaciones restantes cuando los recursos se necesitan en otro lugar. Utilizar un task killer solo romperá el funcionamiento normal del SO y podría incluso ralentizar el dispositivo porque las aplicaciones siempre tendrán que recargarse desde el principio.

El ciclo de vida de las aplicaciones de Android funciona de manera que las aplicaciones que no están en la parte superior se mueven en un estado de pausa que ya no utiliza ninguna cpu; sólo el contenido de la memoria se mantiene en caso de que la aplicación se abra de nuevo; y la memoria se liberará si es necesario.

Dicho esto, el desarrollador de la aplicación tiene la responsabilidad de seguir el ciclo de vida de la aplicación cuando crea su aplicación por lo que algunos errores o bugs pueden ocurrir que resultarán en una aplicación que nunca se detiene o pausa realmente. Si te encuentras con una aplicación de este tipo y quieres cerrarla puedes hacerlo a través de "Ajustes" -> "Aplicaciones" -> "Gestionar aplicaciones" seleccionando "Forzar detención" en la aplicación.

Pero realmente no recomendaría usar un eliminador de tareas que se ejecute constantemente en el dispositivo.

3voto

Andy Brudtkuhl Puntos 1714

Las actividades no se ejecutan en segundo plano

En Android, actividades (es decir, la parte de la aplicación que puedes ver) nunca se ejecutan en segundo plano. Sólo pueden ejecutarse (y consumir batería) mientras están en la pantalla. La actividad deja de ejecutarse independientemente de que uses Inicio o volver para dejarlo. La única diferencia es qué datos le pide Android a la aplicación que guarde, así que ninguna de las dos opciones es "la forma correcta". Sólo depende de lo que quieras hacer.

Inicio

Si utiliza Inicio En el caso de la aplicación de correo electrónico, Android deja la aplicación en el mismo estado, de modo que si vuelves a ella más tarde (por ejemplo, a través de la lista de aplicaciones recientes), seguirá estando en el mismo estado en que la dejaste: en la misma pantalla, con las mismas cosas mostradas. Por ejemplo, si se trata de una aplicación de correo electrónico, y estabas viendo un correo, entonces recordará qué correo era, y te mostrará el mismo.

Eventualmente (después de una media hora), Android concluye que no vas a volver a la aplicación, por lo que restablece este estado: la próxima vez que inicies la aplicación, empezará desde la pantalla frontal/principal. Para continuar con el ejemplo, la aplicación de correo electrónico olvidará qué correo y carpeta estabas viendo, y te mostrará la bandeja de entrada.

Volver

Si utiliza volver le estás diciendo a Android que no quieres volver a esta vista. Destruirá la información sobre lo que estabas viendo en ese momento. La próxima vez que inicies la aplicación, mostrará la pantalla frontal (por ejemplo, la bandeja de entrada).

Como ya han dicho otros, las aplicaciones pueden controlar el comportamiento del volver Por ejemplo, los navegadores web lo utilizan para retroceder en el historial del navegador. Lo que he descrito es el comportamiento por defecto del botón de retroceso, y se insta a los desarrolladores a mantener el comportamiento así para evitar que se confunda.

Procesos de fondo en caché

Sea cual sea el método que utilices, Android dejará la aplicación en la memoria (pero no en ejecución) durante todo el tiempo que pueda. Esto es para ser más eficiente. Cuando vuelvas a la aplicación, si todavía está en la memoria, Android puede ejecutarla de nuevo inmediatamente; si no está todavía en la memoria, entonces Android tiene que gastar tiempo y energía cargando la aplicación desde el almacenamiento de nuevo.

En las versiones antiguas de Android, las aplicaciones que quedaban en la memoria en segundo plano se incluían en la lista de "aplicaciones en ejecución". Esto es un poco confuso para los usuarios -hace que la gente piense que la aplicación está realmente en ejecución-, por lo que las versiones más recientes llaman a estas aplicaciones "procesos de fondo en caché", para dejar claro que solo están en caché, no en ejecución.

¿Qué pasa con las aplicaciones en segundo plano?

Antes he dicho que las actividades no se ejecutan en segundo plano. Entonces, ¿cómo comprueba tu cliente de correo electrónico el correo? Además de las actividades, las aplicaciones pueden tener servicios . Los servicios no tienen ninguna interfaz gráfica que puedas ver o con la que puedas interactuar, pero se ejecutan en segundo plano. Por lo general, un servicio sólo se ejecuta con poca frecuencia, por ejemplo, para comprobar el correo una vez por hora, pero es posible que el desarrollador de la aplicación ejecute el servicio todo el tiempo, agotando la batería.

Abandonar una actividad con volver o Inicio no cambia el modo en que Android trata los servicios de la misma aplicación: el servicio puede seguir ejecutándose o activarse más tarde en un momento determinado (la próxima vez que haya que comprobar el correo).

Resumen

En resumen, no importa realmente si se utiliza volver o Inicio La aplicación sólo cambia lo que te muestra la próxima vez que la ejecutes. No tiene efecto sobre el uso de la batería. Ninguno de los dos corresponde a "salir" de un programa en tu PC.

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