Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Ciclo de vida de la actividad de Android en Jelly Bean

He estado desarrollando una aplicación desde hace unos meses y preparándome para lanzarla. He estado usando el Motorola Xoom con Android 4.0.4 para las pruebas durante todo el proceso y todo ha funcionado sin fallar. Compré un Nexus 7 de Google (corriendo Jelly Bean 4.1) y ahora estoy recibiendo todo tipo de problemas con el ciclo de vida de la actividad cuando el dispositivo duerme o se apaga.

He creado un nuevo proyecto con el único propósito de comprobar el ciclo de vida y este es el resultado que me ocurrió. El siguiente código es una muestra de lo que he hecho en cada uno de los métodos del ciclo de vida.

  • ImageView esquinas redondeadas
  • Establecer el intervalo de elementos en GridLayoutManager mediante SpanSizeLookup
  • ¿Cómo funciona getAltitude () de Android GPS Location Works
  • Cómo ocultar la barra de navegación de forma permanente en la actividad android?
  • ¿Cómo anular los elementos definidos en un proyecto de biblioteca de Android?
  • Android establece varias alarmas
  • @Override protected void onPause() { Log.i("TEST", "onPause()"); super.onPause(); } 

    Resultados de Xoom (resultados esperados)

     ---------- Program Launch ------------- onCreate(null) onStart() onResume() ---------- Turn Off Screen ------------ onPause() onSaveInstanceState(not null) onStop() ---------- Turn Screen On ------------- onReStart() onRestoreInstanceState(not null) onResume() 

    Resultados de Nexus 7 (resultados inesperados)

     ---------- Program Launch ------------- onCreate(null) onStart() onResume() ---------- Turn Off Screen ------------ onPause() onSaveInstanceState(not null) onStop() onDestroy() onCreate(not null) onStart() onRestoreInstanceState(not null) onResume() onPause() ---------- Turn Screen On ------------- OnResume() onPause() onSaveInstanceState(not null) onStop() onDestroy() onCreate(not null) onStart() onRestoreInstanceState(not null) onResume() 

    Una vez más, estos resultados son de un proyecto nuevo con ningún cambio de código distinto de las declaraciones de registro en cada uno de los métodos. ¿Por qué hay tantas llamadas de método adicionales innecesarias cuando el Nexus 7 se apaga y se vuelve a encender? Parece estar destruyendo completamente la aplicación y luego volver a crear.

    Por razones de integridad, cuando se utiliza el botón de inicio y, a continuación, volver a iniciar la aplicación, el ciclo de vida parece ser coherente entre los dispositivos.

    Gracias de antemano por cualquier ayuda. Wayne

  • ¿Cómo desplazarse al centro del hijo de HorizontalScrollView?
  • Aumentar la salida de volumen del audio grabado
  • Negación de permisos al intentar acceder a contactos en Android
  • Implementación del permiso de Marshmallow
  • Efecto de cabecera de Parallax con RecyclerView
  • Android: el icono de APK no se está instalando
  • 2 Solutions collect form web for “Ciclo de vida de la actividad de Android en Jelly Bean”

    Parece que su actividad se ha recreado en los escenarios en cuestión. Esto suele suceder cuando se produce un cambio de configuración en el sistema. Su actividad se vuelve a crear y se reinicia de forma predeterminada, a menos que decida explícitamente manejar el cambio de configuración por su cuenta. Debe comprobar esta lista , uno de estos cambios podría ocurrir cuando encienda o apague la pantalla (ya que está seguro de que no gira el dispositivo al mismo tiempo?).

    Acerca de los cambios de configuración, puede leer en esta página oficial.

    Jelly Bean 4.1 – Nexus 7 tiene una opción en este camino:

    Configuración -> Opciones para desarrolladores -> No mantener actividades …

    Esa opción matará todas las actividades que van al fondo. Así que cuando Android cambie el estado a 'dormir' y 'despertar' su actividad está siendo destruida y recreada.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.