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


Cómo cancelar AsyncTask cuando la actividad termina?

En mi actividad uso varias clases AsyncTask.

Cómo cancelar AsyncTask cuando la actividad termina?

3 Solutions collect form web for “Cómo cancelar AsyncTask cuando la actividad termina?”

No entiendo si su "cancelar" significa la reversión pero usted tiene un método de la cancelación en la clase de AsyncTask .

Creo que el mejor lugar para hacer esto es onStop

 protected void onStop() { super.onStop(); /* * The device may have been rotated and the activity is going to be destroyed * you always should be prepared to cancel your AsnycTasks before the Activity * which created them is going to be destroyed. * And dont rely on mayInteruptIfRunning */ if (this.loaderTask != null) { this.loaderTask.cancel(false); } } 

En mi tarea i entonces comprobar tan a menudo como sea posible si se canceló se llamó

 protected String doInBackground(String... arg0) { if (this.isCancelled()) { return null; } } 

Y por supuesto no te olvides de soltar datos que quizás devueltos ya que no hay más Actividad para recibirlo

 protected void onPostExecute(List<UserStatus> result) { if(!this.isCancelled()) { //pass data to receiver } } 

El subproceso asíncrito se mantiene vivo en un grupo de subprocesos para las istances futuras de AsyncTask. No puedes eliminarlos.

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