Múltiples AsyncHttpClient obtener solicitudes para rellenar una actividad

Tengo una "GameActivity" y con el fin de rellenar el diseño tengo que hacer varias llamadas a una API remota y preguntando la mejor manera de lograr esto utilizando el paquete AsyncHttpClient http://loopj.com/android-async-http/ .

Mi configuración actual para una sola llamada de API:

public class MainActivity extends Activity implements AdapterView.OnItemClickListener, SwipeRefreshLayout.OnRefreshListener{ ListView mainListView; JSONMainAdapter mJSONAdapter; SwipeRefreshLayout swipeLayout; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); swipeLayout = (SwipeRefreshLayout) findViewById(R.id.main_swipe_container); swipeLayout.setOnRefreshListener(this); swipeLayout.setColorScheme(android.R.color.holo_blue_bright, android.R.color.holo_green_light, android.R.color.holo_orange_light, android.R.color.holo_red_light); mainListView = (ListView) findViewById(R.id.main_listview); mainListView.setOnItemClickListener(this); mJSONAdapter = new JSONMainAdapter(this, getLayoutInflater()); mainListView.setAdapter(mJSONAdapter); getGameDetails(); } 

Así que mi getGame Details será la primera llamada, pero luego tendré que hacer 4-6 más.

Mi getGameDetails:

 private void getGames() { swipeLayout.setRefreshing(true); MyRestClient.get("games", null, new JsonHttpResponseHandler() { @Override public void onSuccess(JSONObject jsonObject) { swipeLayout.setRefreshing(false); Toast.makeText(getApplicationContext(), "Success!", Toast.LENGTH_LONG).show(); mJSONAdapter.updateData(jsonObject.optJSONArray("games")); } @Override public void onFailure(int statusCode, Throwable throwable, JSONObject error) { swipeLayout.setRefreshing(false); Toast.makeText(getApplicationContext(), "Error: " + statusCode + " " + throwable.getMessage(), Toast.LENGTH_LONG).show(); Log.e("ERROR", statusCode + " " + throwable.getMessage()); } }); } 

Así que mis pensamientos son para agregar una función para cada llamada que necesito y sólo les llamo uno tras otro en mi onCreate así:

 getGameDetails(); getGameCallA(); getGameCallB(); getGameCallC(); 

El otro método sería llamar a la función siguiente en el método onSuccess de AsyncHttpClient, pero eso no parece correcto.

Pregunta: ¿hay una "petición por lotes" con AsyncHttpClient que debo usar aquí?

Cualquier entrada apreciada, gracias.

No tengo manera de verificar que funcionará o no, pero supongo que hay una manera de ejecutar sus peticiones una tras otra

En su clase MyRestClient :

 private static AsyncHttpClient client = new AsyncHttpClient(); static { client.setThreadPool(Executors.newSingleThreadExecutor()); } 

Después de que usted acaba de llamar:

 getGameDetails(); getGameCallA(); getGameCallB(); getGameCallC(); 
  • Cuadro de diálogo de alerta de Appcompat Fondo del botón de acción En estado presionado
  • Layout_width y layout_height no se está aplicando a edittext desde el tema
  • Dibuja un círculo en el centro de la lona
  • Problema de diseño: SliderDrawer no rellena el ancho de los padres
  • Cómo manejar el evento de clic en cada celda de un diseño de tabla
  • Android - ajustar scrollview cuando el teclado está para Android 5.0 (piruleta)
  • ¿Cómo obtengo la vista de una pestaña en un TabLayout?
  • Android: inflar un diseño y escribirlo en PDF produce un PDF en blanco
  • ¿Cuál es la diferencia entre layout_gravity = "center_vertical" y layout_centerVertical = "true"
  • ¿Por qué Lint muestra advertencia cuando se utiliza en unidades de (pulgadas) o mm (milímetro) como dimensión?
  • ¿Cómo puedo colocar un fondo en una imagen dentro de un relativelayout?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.