Sie sollten die Anfrage des Set RetryPolicy:
myRequest.setRetryPolicy(new DefaultRetryPolicy(
MY_SOCKET_TIMEOUT_MS,
DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
Dies würde den Code ändern:
RequestQueue mRequestQueue = Volley.newRequestQueue(getApplicationContext());
JsonObjectRequest request = new JsonObjectRequest(Method.GET, cityListUrl, null, new
Listener<JSONObject>() {
public void onResponse(JSONObject jsonResults) {
//Any Call
}
}, new ErrorListener(){
public void onErrorResponse(VolleyError arg0) {
//Any Error log
}
}
);
int socketTimeout = 30000;//30 seconds - change to what you want
RetryPolicy policy = new DefaultRetryPolicy(socketTimeout, DefaultRetryPolicy.DEFAULT_MAX_RETRIES, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT);
request.setRetryPolicy(policy);
mRequestQueue.add(request);
Wenn Sie gerade erst mit Volley Sie beginnen, möchten Sie vielleicht stattdessen betrachten droidQuery, die ein wenig einfacher zu konfigurieren ist:
int socketTimeout = 30000;
$.ajax(new AjaxOptions().url(cityListUrl)
.timeout(socketTimeout)
.success(new Function() {
public void invoke($ d, Object... args) {
JSONObject jsonResults = (JSONObject) args[0];
//Any call
}
})
.error(new Function() {
public void invoke($ d, Object... args) {
AjaxError error = (AjaxError) args[0];
Log.e("Ajax", error.toString());
}
}));
Gibt es eine OnTimeOut Methode? –
@ Mr.Hyde Ich bin mir nicht bewusst, eine in * Volley *, aber Sie können dies in * DroidQuery * mit * statusCode() *, die ein Array von Statuscodes akzeptiert, die zurückgegeben werden können, und eine * Funktion *, So können Sie Timeout-Codes (480,419,504,503,522,598,599) und eine * Funktion * übergeben, die diese Timeouts behandelt. Das erste Argument des * varargs * ist ein * AjaxOptions * -Objekt, mit dem Sie Ihre Anfrage optional neu starten können: '$ .ajax ((AjaxOptions) args [0]);' – Phil
Ich habe das gleiche versucht, ... einige mal funktioniert es .... irgendwann gibt es timeoutError und retries bald .... und gibt wieder die gleichen fehler, ... Wie erkennt man die eigentliche Ursache ??? ... – Bhuro