¿Se puede reanudar una actividad de Android después de finalizar ()?

Comprobación de algún código heredado He encontrado este fragmento:

@Override public void onResume() { if (!isFinishing()) { ... } super.onResume(); } 

A pesar de la llamada super.onResume() al final del método, que se desaconseja:

Nota: La implementación de estos métodos de ciclo de vida siempre debe llamar a la implementación de superclase antes de realizar cualquier trabajo, como se muestra en los ejemplos anteriores http://developer.android.com/guide/components/activities.html

Estoy preocupado por la llamada if (!isFinishing()) , ¿tiene esto sentido? Como puedo ver el código de actividad mFinished variable mFinished se establece en true sólo en finish() y finishActivity() , puede, a través del ciclo de vida de Android, reanudar una actividad que está siendo destruida?

Gracias por adelantado.

La respuesta a su pregunta es "no" la actividad no se puede reanudar si se destruyó.
Aquí está una buena discusión: Comprensión de isFinishing ()

La razón de este código puede ser distinguir entre el cambio de orientación y el acabado real de la actividad. Importante anotar aquí isFinishing: true que significa que la llamada a isFinishing() en el onDestroy () devuelve true, es decir, que sucede cuando:

El usuario pulsa el botón "volver" O el código de la actividad llama a finish() ( isFinishing() devuelve false cuando la actividad se está cerrando después de la rotación del teléfono para volver a iniciarse)

http://ogrelab.ikratko.com/activity-lifecycle-explained-in-details/

Finalmente, el código heredado llamaba finish() bajo algunas circunstancias en el método onCreate() . Pero echando un vistazo a onCreate() javadoc :

Puede llamar a finish () desde esta función, en cuyo caso onDestroy () será llamado inmediatamente sin el resto del ciclo de vida de la actividad (onStart (), onResume (), onPause (), etc) ejecutándose.

Por lo tanto, esta llamada isFinishing() es inútil dentro onResume()

  • Mide la vista en el fragmento
  • ¿Este patrón de mensajería de Servicio de Actividad causa una pérdida de memoria?
  • ¿Qué sucede con la aplicación Android cuando una llamada telefónica interrumpe la aplicación?
  • OnCreate () llamado mientras se detiene la actividad (pero no se destruye). Sólo después de la instalación
  • Devolución de llamada cuando la aplicación se cancela al pasar
  • Cuándo llamar a super.onPause ()?
  • La aplicación se reinicia en lugar de continuar
  • Algunos fragmentos se pierden en rotación
  • Ciclo de vida del fragmento AppCompat cambiado
  • Liberar recursos en onPause en lugar de onDestroy
  • Android cómo detener la actualización Fragmentos en el cambio de ficha
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.