2016-09-01 4 views
1

Ich arbeite an Android Studio auf irgendeinen anderen Code, der Volley verwendet. Ich aktualisiert innerhalb Gradle zu neuesten CompileSdkVersion, BuildToolsVersion (24) und TargetSdkVersion. Innen gradle Konfiguration, Volley wurde auf diese Weise eingeschlossen:Volley und Symbol nicht gefunden: AndroidHttpClient

compile 'com.mcxiaoke.volley:library:1.+' 

ich migriert:

compile 'com.android.volley:volley:1.+' 

ich einige böse 400 Fehler bekommen, sollte das bedeuten, dass die Verbindung hergestellt ist, aber es für einige ist falschen Grund ... dann fand ich innerhalb Volley.java, dass ein Fehler ist, dass ich nicht bewusst war, weil es einfach nicht gezeigt und wurde die App richtig kompiliert und ausgeführt:

import android.net.http.AndroidHttpClient; 

ist in rot, und so ist der nachfolgende Aufruf einer Methode in

AndroidHttpClient 

(das fehlschlägt mit "Symbol nicht gefunden").

Jetzt habe ich zwei Fragen:

  1. wie ist es möglich, dass wir kompilieren und die Anwendung auszuführen, wenn ein Fehler in einer Bibliothek ist? Ich vermisse das.

  2. Wie kann ich das beheben, ohne in andere Netzwerkbibliotheken zu wechseln?

Update: zu klären, zu API Kompilieren 22 entfernt den Fehler. Kompilieren zu API 24 erzeugt diesen Fehler, der direkt in der Quelle von Volley erscheint. Ich würde gerne auf API 24 ohne Volley kompilieren, ist das möglich?

+0

Sie können die Volley Quellcode herunterladen und kompilieren/ändern es auf eigene Gefahr;) – Enzokie

+0

Sie brauchen nicht 'AndroidHttpClient' wenn Sie Volley verwenden, so dass ich denke, Sie sollten Zeige den Code, der tatsächlich für 'AndroidHttpClient' verwendet wird, da Volley wahrscheinlich nicht das Problem ist –

+0

Ich benutze keinen AndroidHttpClient, ich benutze Volley.newRequestQueue (this), die AndroidHttpClient im Quellcode enthält. –

Antwort

0

AndroidHttpClient wurde von API23 & oben entfernt.

Verwendung:

android { 
    useLibrary 'org.apache.http.legacy' 
} 
+0

Die Frage ist mit Volley, nicht Apache HTTP ... –

+0

Ja, es wäre besser, Volley weiter zu verwenden, gibt es eine Möglichkeit, es ohne Downgrade API22 zu tun? –

Verwandte Themen