Apache Commons IO en Android

Estoy desarrollando una aplicación de Android que utiliza Apache Commons IO , commons-io-2.4-bin.tar.gz .

Y tengo algunos errores, uno de ellos:

Could not find method java.lang.String.getBytes, referenced from method org.apache.commons.io.IOUtils.toInputStream 

Creo que no tengo que preocuparme por ello, ¿no?

¿Existe otra biblioteca específica de Android que pueda utilizar en lugar de Apache Commons IO?

Lo estoy usando aquí:

 import java.io.IOException; import java.util.HashMap; import java.util.Map; import org.apache.commons.io.IOUtils; import org.springframework.http.client.ClientHttpResponse; import org.springframework.web.client.DefaultResponseErrorHandler; import org.springframework.web.client.ResponseErrorHandler; import android.util.Log; public class CustomResponseErrorHandler implements ResponseErrorHandler { private ResponseErrorHandler errorHandler = new DefaultResponseErrorHandler(); @Override public void handleError(ClientHttpResponse response) throws IOException { String theString = IOUtils.toString(response.getBody()); Log.v("Error Handler", theString); CustomException exception = new CustomException(); Map<String, Object> properties = new HashMap<String, Object>(); properties.put("code", response.getStatusCode().toString()); properties.put("body", theString); properties.put("header", response.getHeaders()); exception.setProperties(properties); throw exception; } @Override public boolean hasError(ClientHttpResponse response) throws IOException { return errorHandler.hasError(response); } } 

En esta línea:

 String theString = IOUtils.toString(response.getBody()); 

Guayaba podría ser un buen reemplazo para usted. Su wiki afirma que son totalmente compatibles con Android:

Guava 11.0.2 y anteriores son totalmente compatibles con Android, pero las versiones más recientes de Android pueden ser requeridas para las últimas versiones de Guava. En particular, NavigableSet y otras extensiones añadidas en Java 6 (utilizadas por Guava 12 y superiores) se agregaron en la versión 9 de la API de Android, correspondiente a Gingerbread.

(Se aconseja a los programadores de Android que se preocupan por el gran tamaño de JAR de Guava usar ProGuard para obtener sólo las partes de Guayaba que necesitan.Guava es una de las dependencias más comunes para las aplicaciones de Android.)

Para el equivalente Guava de IOUtils.toString() compruebe la siguiente pregunta: Guava equivalente para IOUtils.toString (InputStream)

Recomiendo el uso de la fuente Apache Commons IO biblioteca, y luego el embalaje a Android 🙂 He empaquetado en un repo aquí . Sólo importa en su IDE de elección!

  • Pasa la variable de cadena de java a php
  • HttpResponse a la longitud de cadena 0 se devuelve
  • Visualización de imágenes y conversión a escala de grises - OpenCV para Android, API de Java
  • Características del lenguaje Java 7 con Android
  • Cómo convertir los registros de base de datos en archivo csv en android?
  • ¿Por qué Google eligió Java para el sistema operativo Android?
  • ¿Es posible crear imágenes de forma programática en Java, Android?
  • ¿Cómo agregar un fragmento en mi actividad dinámicamente?
  • La aplicación JavaFX en la plataforma Android es demasiado lenta (JavaFXPorts / Gluon)
  • FileInputStream a la matriz de bytes en la aplicación de Android
  • No se pueden agregar datos al mapa hash declarado dentro de una clase que no sea de actividad
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.