anko doAsync onComplete

Sé que hay dos methods disponibles para hacer AsyncTask en la biblioteca de Anko .

  1. doAsync ()

  2. doAsyncResult ()

Mi pregunta es que ambos methods tienen el método onComplete() . En onComplete() ambos methods no hay ningún rastro de resultado como AsyncTask.onPostExecute() .

Ejemplo :

  doAsync { sdkServiceFactory.initSDKService() onComplete { Log.d("Controller", "Sdk Connected") } } val result = doAsyncResult { onComplete { Log.d("Controller", "Sdk Connected") } sdkServiceFactory.initSDKService() }.get() 

En cualquier método, puedo get solo la callback completada no el resultado. ¿Cuáles son los methods similares disponibles en la biblioteca Anko para AsyncTask.onPreExecute () y AsyncTask.onPostExecute () .

doAsync se usa para ejecutar código en un hilo diferente, pero no devuelve nada al hilo principal cuando termina.

doAsyncResult se utiliza para realizar una actividad en un subprocess separado y ejecutar una operación en el subprocess principal después de completar la ejecución en el subprocess independiente.

Para impulsar cualquier cosa al hilo principal, agregue un nuevo bloque con

 uiThread { //write you code here } 
  • ¿Por qué Kotlin lanza IllegalArgumentException cuando usa Proxy?
  • El estudio de Android no resuelve las classs escritas en Kotlin (.kt) en el IDE, pero comstack bien
  • Campos públicos para compatibilidad con Java
  • Cómo resolver: Error: ejecución fallida para la tarea ': aplicación: kaptDebugKotlin'?
  • ¿Cómo hacer un time de compilation constante NaN o POSITIVE_INFINITY en Kotlin?
  • Recruit-MP LightCalendarView - Error al inflar la class, noSuchMethodException
  • Convertir matriz en list en Kotlin
  • Anima la vista escalando a la altura completa de la pantalla desde su position