Eu configurei 1500 como initialTimeoutMs em DefaultRetryPolicy como abaixo, mas ele não considera o tempo limite:
request.setRetryPolicy(new DefaultRetryPolicy(1500
, DefaultRetryPolicy.DEFAULT_MAX_RETRIES
, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
Desconectei o Wi-Fi no meu dispositivo para testar o tempo limite e vi estes horários no Logcat :
2019-12-16 14:28:15.892 I/MyClass: request sent
2019-12-16 14:28:35.930 I/MyClass: request caught onError
Demorou mais de 20 segundos enquanto esperava capturar onResponse ou onError após 1,5 segundos !!!
java
android
android-volley
request-timed-out
retrypolicy
Alireza Noorali
fonte
fonte
public static final int DEFAULT_MAX_RETRIES = 1;
public static final float DEFAULT_BACKOFF_MULT = 1f;
Respostas:
De acordo com o seu configure. Seu tempo limite deve ser de 3 segundos. Referindo-se a http://prasadthangavel.blogspot.com/2013/12/why-volley-android-has-provided-two.html
Eu acho que você deve fazer DEFAULT_BACKOFF_MULT zero.
fonte
Use 5 s porque 15 s é muito mais para dar tempo limite.
fonte