org - Conexión HTTP Apache con Android 6.0(Marshmallow)
http apache android (2)
¿Hay alguna forma de incluir la biblioteca Apache directamente en Gradle para que funcione con Android 6.0?
Intenté incluir las bibliotecas así:
compile ''org.apache.httpcomponents:httpcore:4.4.1''
compile ''org.apache.httpcomponents:httpclient:4.5''
Y Android Studio no pudo encontrar la siguiente importación:
import org.apache.http.auth.AuthenticationException;
import org.apache.http.auth.Credentials;
import org.apache.http.auth.MalformedChallengeException;
import org.apache.http.auth.UsernamePasswordCredentials;
import org.apache.http.impl.auth.DigestScheme;
De acuerdo con los cambios de diferencias de API 22-23, los paquetes org.apache.http. * Se han eliminado a partir de Android 6.0 (Marshmallow) API Level 23.
http://developer.android.com/sdk/api_diff/23/changes.html
Vía: http://android-developers.blogspot.co.uk/2015/08/m-developer-preview-3-final-sdk.html
Esta página discute la eliminación de las clases HTTP de Apache, y también sugiere una solución alternativa:
Para continuar usando las API de Apache HTTP, primero debe declarar la siguiente dependencia en tiempo de compilación en su archivo build.gradle:
android { useLibrary ''org.apache.http.legacy'' }
En mi caso, Android Studio aún se quejaba de que no podía encontrar estas clases, pero la aplicación se compiló y ejecutó.
Sin embargo, la página le recomienda pasar a HttpURLConnection .