Enviar entero al servidor HTTP usando NameValuePair

Quiero enviar un par de valores a un servidor web desde mi cliente Android usando este método NameValuePair :

 public void postData() { // Create a new HttpClient and Post Header HttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost("http:/xxxxxxx"); try { // Add your data List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1); String amount = paymentAmount.getText().toString(); String email = inputEmail.getText().toString(); nameValuePairs.add(new BasicNameValuePair("donationAmount", amount)); nameValuePairs.add(new BasicNameValuePair("email", email)); nameValuePairs.add(new BasicNameValuePair("paymentMethod", "5")); httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); // Execute HTTP Post Request HttpResponse response = httpclient.execute(httppost); } catch (ClientProtocolException e) { // TODO Auto-generated catch block } catch (IOException e) { // TODO Auto-generated catch block } } 

Lamentablemente NameValuePair sólo es capaz de enviar String, también necesito enviar valores enteros. ¿Puede alguien ayudarme a resolver mi problema?

Hola hectichavana Si desea enviar valores enteros usando el par de nombre de valor puede probar de esta manera

 nameValuePairs.add(new BasicNameValuePair("gender",Integer.toString(1))); 

Donde el género significa clave y 1 se convertirá en valor de esta clave. Espero que esto ayude.

No pienso que el otro extremo de su cuidado de la petición del poste de su formato del valor el cliente que usa y lo toma todo como cadena. Así que la OMI es por eso que NameValuePair solo toma String. Si sus datos están en formato numérico siempre puede convertirlo de nuevo a String y emparejarlo usando NameValuePair

 new BasicNameValuePair("integer", new Integer().toString(value)); 

Es un ejemplo que siempre uso.

Disculpas si estoy diciendo lo obvio y / o falta el punto, pero la solución natural parece ser para convertir ints a Cuerdas y luego convertir de nuevo en el servidor final. La solución más completa sería utilizar una presentación diferente (como XML) para codificar los datos.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.