Desaprueban AsyncTask en Android, google prefiere Coroutine con Kotlin

  • INSTRUCTOR:

    Team Academia móviles

  • 08/11/2019

Desaprueban AsyncTask en Android, google prefiere Coroutine con Kotlin

AsyncTask de Android ha sido una herramienta básica para desarrolladores principiantes y expertos por igual. Si alguna vez buscó en Google un tutorial para cualquier tipo de lógica asincrónica en Android, es probable que los primeros resultados sugieran usar AsyncTask. Tampoco es una elección aleatoria. AsyncTask se creó originalmente para simplificar la interacción entre las operaciones en segundo plano y la interfaz de usuario de una aplicación. Por un tiempo, lo hizo bien. AsyncTask realmente ayuda a simplificar las tareas asincrónicas.

Si bien AsyncTask simplifica el proceso general, no respeta el ciclo de vida de las aplicaciones de Android. Eso significa que no hay protección incorporada contra un AsyncTask que termina después de un cambio de UI. Por supuesto, es posible agregar checks y otras protecciones manualmente, pero eso agrega una gran cantidad de código de repetición (AKA repetitivo). Debido a problemas como este, AsyncTask ha quedado en el camino.

Debido a las limitaciones de AsyncTask, con el tiempo han surgido alternativas, como RxJava y la nueva biblioteca de Coroutines (ish) de Kotlin. Estas alternativas tienden a tener mucha más flexibilidad y características que AsyncTask, por lo que han ganado bastante popularidad. En su aviso de desaprobación para AsyncTask, Google recomienda utilizar el marco de concurrencia de Java o las Coroutines de Kotlin.

Si desea más detalles, puede consultar el compromiso aquí. El compromiso se fusionó hoy y, a menos que haya una versión de mantenimiento de Android en camino, veremos este cambio reflejado en Android 11 el próximo año.

Traducción de : https://www.xda-developers.com/asynctask-deprecate-android-11/

Fuente: https://android-review.googlesource.com/c/platform/frameworks/base/+/1156409