Android: AndroidHttpClient - how to set timeout?
Ich habe die Anleitung befolgt von kuester2000 Antwort, aber mein Zeitlimit-Einstellungen scheinen nicht zu funktionieren.
try
{
int timeout = 3000;
URL myURL = //some valid URL
AndroidHttpClient = AndroidHttpClient.newInstance("name");
HttpGet httpGet = new HttpGet(myURL.toExternalForm());
HttpParams httpParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParams, timeout);
HttpConnectionParams.setSoTimeout(httpParams, timeout);
HttpResponse response = httpClient.execute(httpGet);
//...
}
catch (SocketTimeoutException e)
{
e.printStackTrace();
}
catch (ConnectTimeoutException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
//...
Jedoch den Wert für das timeout ändert sich nichts.
In der Antwort, die ich miteinander verbunden, man sagt auch:
Den Verbindungs-timeout wirft "java.net.SocketTimeoutException: Socket ist nicht verbunden" und das socket-timeout "java.net.SocketTimeoutException: The operation timed out".
Aber ich bekomme weder. Stattdessen bekomme ich "org.apache.http.conn.ConnectTimeoutException: Connect to ... timed out"
also kann mir keiner helfen? wo ist der Fehler???
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden Sie nicht die
httpParams
params, Sie müssen der HTTPClient. Damit es nicht so. In der Antwort verlinkt wurde, die Reihenfolge ist richtig!!!! Versuchen Sie, die folgenden Auftrag: Erstellen Sie die Params ersten und liefern Sie an den HTTPClient.Ich hat verpassen befestigen Sie die params auf meine http-request, aber der richtige Weg, dies zu tun in meinem Beispiel ist
vor dem Aufruf von httpClient.execute(httpGet).
Nur Hinzugefügt, dass die Linie und es funktionierte gut.
Die andere option, um auf der client-Seite:
Dies sollte dazu führen, dass insbesondere params gesetzt...
HTH
Nach der Lektüre herum, hier ist, wie ich es mit der params-direkt aus der Standard-client:
Ursprüngliche Kredit geht an http://www.jayway.com/2009/03/17/configuring-timeout-with-apache-httpclient-40/