Debe crear nuevas tareas asíncronas para cada llamada diferente o utilizar la misma

Así que tengo una aplicación que hará multipe HTTP Post / Gets

EG Entrar, getThisData, getThatData, sendThis, sendThat

¿Es mejor tener un AsyncTask separado para manejar cada uno

O una tarea asíncrona y procesarlas de forma diferente con un switch en onPostExecute y doInBackground

Aclamaciones

Respuesta breve es sí, debe crear una nueva AsncTask para cada llamada.

Y si te interesa, la respuesta larga es;

De acuerdo con la documentación de Android Asynctask ,

  • El objetivo de AsyncTask es cuidar de la gestión de hilos para usted y no debe preocuparse por los mecanismos de roscado.
  • La Plataforma Android maneja el grupo de subprocesos para administrar las operaciones asíncronas. AsyncTasks son como consumibles. La tarea se puede ejecutar sólo una vez (se producirá una excepción si se intenta una segunda ejecución).

¡Codificación asíncrona feliz! Todos los derechos reservados

Depende de si las tareas son independientes entre sí o si están interrelacionadas. Si es independiente, puede manejar esto a través del mismo async. Por ejemplo, si necesita algunos datos de su respuesta de inicio de sesión y pasar ese valor para obtener esta tarea es mejor utilizar asíncrona independiente. Hacer login un async separado, getthis, get lthat sendthis sendthat puede ser en un async.

Es probable que desee separarlos, especialmente si su funcionalidad en el pre / post se ejecuta difiere. Trate de organizar su código en bloques lógicos. Por ejemplo, si tiene una Async Task to Login y una tarea Async para, por ejemplo, descargar muchos datos de documento a través de JSON, querrán tareas Async independientes.

Sin embargo, supongamos que tiene dos llamadas de API separadas que devuelven similar o parcialmente los mismos datos – si uno devolvió los detalles de un archivo (nombre, tamaño) y el otro devolvió los mismos datos pero era una revisión de un archivo – podría cambiar éstos en el mismo ASYNC porque la ejecución posterior va a realizar el mismo (o parcialmente el mismo) código para extraer datos del JSON.

Si desea crear una instancia de AsyncTask y ejecutar () varias veces, no:
Ejecutar AsyncTask varias veces

Si usted está preguntando sobre el diseño: si usted debe escribir una clase para obtener diferentes tipos de datos? Realmente depende de sus circunstancias:
Si se supone que estas llamadas HTTP son secuenciales, puede ponerlas en una clase AsyncTask.
Si tienen mucho en común, solo apunta a diferentes URIs, puedes escribir un método de llamada (String uri) e invocar ese método en tu AsyncTask. Este caso, creo que un AsyncTask es también suficiente.

  • Cómo mantener las cookies de sesión HTTP en HttpContext entre las actividades en Android?
  • SecurityException: Permiso denegado (¿permiso de Internet perdido?)
  • Android socket de programación ... ¿qué da?
  • Autenticación HTTP básica con KSOAP para android
  • Envío de archivos mediante POST con HttpURLConnection
  • Especificación de parámetros en la aplicación REST API GET
  • Cómo enviar datos POST con código en una vista web de Android
  • Conexión de http de Android con OkHttp No funciona
  • Cómo comprobar rápidamente si el servidor de URL está disponible
  • ¿Cómo usar http / 2 con Okhttp en dispositivos Android?
  • Buscando retroalimentación técnica en Nextreaming NexPlayer ™
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.