¿Puedes tener dos AsyncTasks en una Actividad?
Ya he desarrollado una actividad que analizará los datos de JSON y mostrará los resultados en un ListView. Estoy usando una AsyncTask para este propósito.
Lo que quiero ahora es que, cuando haga clic en un elemento en el ListView, el archivo debe comenzar a descargar. ¿Puedo escribir otro AsyncTask en la misma actividad para que este AsyncTask haga el trabajo de descarga para mí? ¿Hay algún problema con tener múltiples AsyncTasks en la misma actividad?
- Cómo mostrar un spinner de progreso en android, cuando doInBackground () se está ejecutando
- Android llama a AsyncTask justo después de que otro termine
- Java.lang.ClassNotFoundException: android.os.AsyncTask causado por AdMob / Servicios de Google Play?
- Cómo agregar datos a BaseAdapter personalizado para listView - Android
- ¿Cómo utilizar ExecutorService con Android AsyncTask?
- Thread.sleep detiene todas las Asyntasks anidadas
- ¿Es posible determinar el tamaño del archivo que se va a descargar?
- Número de conexiones de red en Android
- Android loopj + GCMIntentService enviar mensaje a un Handler en un hilo muerto
- ¿Cuál es la forma más eficiente en Android de llamar a las llamadas de la API Web HTTP que devuelven una respuesta JSON?
- Cómo extender desde AsyncTask como una clase base genérica?
- Programar tareas asíncronas múltiples en android
- AsyncTask: onPostExecute se ejecuta dos veces?
No debería haber ningún problema con varias Asynctasks en una sola actividad. Debe tener cuidado de definir claramente los valores que cada uno manipula (por ejemplo, si la tarea B se basa en un valor dado por la tarea A, asegúrese de que A debe terminar primero), pero en general, debería estar bien. Tengo un proyecto ahora mismo con tres asynctasks que funcionan sobre la primera instalación, y está marcando a lo largo de la multa hasta ahora.
Según el Doc, sí se puede.
Cuando se introdujo por primera vez, AsyncTasks se ejecutaron en serie en un solo hilo de fondo. Comenzando con DONUT, esto fue cambiado a un grupo de hilos permitiendo que múltiples tareas funcionaran en paralelo. Comenzando con HONEYCOMB, las tareas se ejecutan en un solo hilo para evitar errores de aplicación comunes causados por la ejecución en paralelo.
Si realmente desea una ejecución paralela, puede invocar executeOnExecutor (java.util.concurrent.Executor, Object []) con THREAD_POOL_EXECUTOR.
BEst answer ¿Cómo está en stackoverflow?
Sí tu puedes.
AsyncTask es una sencilla implementación de procesador de subprocesos.
- Usando SimpleXML, cómo ignorar elementos xml que no tengo en mi clase de objeto al deserializar
- ImageView una dimensión para caber espacio libre y segundo evaluar para mantener la ración de aspecto