wake-up-neo.com

Apache HTTP-Verbindung mit Android 6.0 (Marshmallow)

Gibt es eine Möglichkeit, die Apache-Bibliothek direkt in Gradle einzubinden, damit sie mit Android 6.0) funktioniert?

Ich habe versucht, die Bibliotheken so einzuschließen:

compile 'org.Apache.httpcomponents:httpcore:4.4.1'
compile 'org.Apache.httpcomponents:httpclient:4.5'

Und Android Studio konnte den folgenden Import nicht finden:

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;
29
Hrk

Diese Seite beschreibt das Entfernen der Apache-HTTP-Klassen und schlägt auch eine Problemumgehung vor:

Um die Apache-HTTP-APIs weiterhin verwenden zu können, müssen Sie zunächst die folgende Abhängigkeit zur Kompilierungszeit in Ihrer build.gradle-Datei deklarieren:

   Android {
       useLibrary 'org.Apache.http.legacy'
   }

In meinem Fall hat sich Android Studio immer noch beschwert, dass es diese Klassen nicht finden konnte, aber die App wurde erstellt und ausgeführt.

Auf der Seite wird jedoch empfohlen, nach HttpURLConnection zu wechseln.

57
benvd

Gemäß den API 22-23 Diff-Änderungen wurden die org.Apache.http. * -Pakete ab Android 6.0 (Marshmallow) API Level 23 entfernt.

http://developer.Android.com/sdk/api_diff/23/changes.html

via: http://Android-developers.blogspot.co.uk/2015/08/m-developer-preview-3-final-sdk.html

1
Kosso