Foros del Web » Programando para Internet » Android »

Como hacer varias peticiones al Web Service??

Estas en el tema de Como hacer varias peticiones al Web Service?? en el foro de Android en Foros del Web. Hola familia necesito me aclaren algo, necesito hacer varias peticiones a mi web service desde una misma actividad, es decir, necesito tres respuestas diferentes del ...
  #1 (permalink)  
Antiguo 29/01/2014, 08:51
 
Fecha de Ingreso: marzo-2008
Mensajes: 128
Antigüedad: 16 años, 1 mes
Puntos: 0
De acuerdo Como hacer varias peticiones al Web Service??

Hola familia necesito me aclaren algo, necesito hacer varias peticiones a mi web service desde una misma actividad, es decir, necesito tres respuestas diferentes del servidor, de momento lo estoy haciendo con AsyncTask y en el método "doInBackground" estoy haciendo las 3 peticiones, la pregunta que me hago es si está bien hecho de esa forma o tengo que llamar a 3 clases AsyncTask diferentes para cada petición para que se cumpla bién el mecanismo de hilos y esas cosas. Les dejo el codigo para qu evean lo que estoy tratando de hacer, las funciones WebGet y WebGetWithToken son los que se conectan al server y hacen las peticiones, una peticion me devuelve un arreglo de Usuarios, la otra la cantidad de mensajes que existen y la otra un arreglo de Mensajes, esta última no me está devolviendo lo que quiero; pero bueno eso es para otro post. Saludos.

Código:
@Override
protected Boolean doInBackground(Void... arg0) {
try {

WebService _ws = new WebService();
String response = _ws.webGet(ServiceConfiguration.UsersOnline);
String responseCM = _ws.webGet(ServiceConfiguration.CountMessages);

HashMap<String, Object> params = new HashMap<String, Object>();
params.put("index", "0");
params.put("size", "2");
String responseAM = _ws.webGetWithToken(ServiceConfiguration.AllMessages, params);

if (response != null && !response.equals("")) {

Type collectionType = new TypeToken<Usuario[]>() {}.getType();
Usuario[] usuarios = miGson.fromJson(response, collectionType);

if (responseCM != null && !responseCM.equals("")) {

respCM = Integer.parseInt(responseCM);

if (responseAM != null && !responseAM.equals("")) {

Type collectionTypeAM = new TypeToken<Message[]>() {}.getType();
Message[] messages = miGson.fromJson(response, collectionTypeAM);

publishProgress(messages);

//return true;

} else {
	return false;
  }
} else {
       return false;
  }
} else {
       return false;
  }
} catch (Exception e) {
Log.i("valores", "Error al leer el json");
e.printStackTrace();
}
return null;
}

Etiquetas: peticiones
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:07.