Algún tipo de cola para asynctask

Hola tengo ListView con lista de archivos. Hago clic en el elemento y comienzo a descargar este archivo en asynctask. Entonces hago clic en otro y se debe poner en la cola, esperar a que el archivo y empezar a descargar ot después de que termine. Puedo hacer una clase que contenga todos los enlaces pulsados, y pasarlo a asynctask descargar parte? Y que de alguna manera los procesan. Pero quiere saber es el camino correcto? Cualquier vínculo de sugerencias? Gracias

Si está preparado para utilizar AsyncTask, sí, mantenga pulsado los vínculos y realice nuevas tareas cuando sea necesario. Debe tener en cuenta que AsyncTask es como el 'cuchillo de bolsillo' para roscar en las aplicaciones de Android.

Si realmente necesita administrar un montón de tareas de fondo, y suena como lo hace, eche un vistazo a ThreadPoolExecutor. Tienes mucha flexibilidad. BlockingQueue ThreadPoolExecutor Más información Ejemplo

Eche un vistazo a HandlerThread y la clase Handler. Necesita un controlador para pasar las tareas al HandlerThread de fondo y otro para el hilo de la interfaz de usuario para pasar los resultados a la interfaz de usuario

Aunque viejo, llegó aquí desde Google: considere un IntentService.

Si realmente necesitas hacer eso,

Hacer algo Me gusta esto:

private class SomeTask extends AsyncTask<Void, Void, Void> { private mNextTask = null; public void enqueueTask(SomeTask task) { if (mNextTask == null) { mNextTask = task; } else { mNextTask.enqueueTask(task); } } ...... protected void onPostExecute(Boolean result) { if (mNexttask != null) mNextTask.execute(); } } 

Y, al iniciar las tareas:

 if (mRunningTask != null) { mRuningTask.enqueueTask(newTask); } else { mRuningTask = newTask; newTask.execute(); } 
  • forma correcta de usar sockets en la aplicación android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.