아래와 같이 DefaultRetryPolicy 에서 1500을 initialTimeoutMs 로 설정 했지만 시간 초과를 고려하지 않습니다.
request.setRetryPolicy(new DefaultRetryPolicy(1500
, DefaultRetryPolicy.DEFAULT_MAX_RETRIES
, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
시간 초과 여부를 테스트하기 위해 장치에서 WiFi를 분리하고 Logcat 에서 다음 시간을 보았습니다 .
2019-12-16 14:28:15.892 I/MyClass: request sent
2019-12-16 14:28:35.930 I/MyClass: request caught onError
1.5 초 후에 onResponse 또는 onError를 잡을 것으로 예상되는 동안 20 초 이상 걸렸습니다!
답변
구성에 따라. 제한 시간은 3 초입니다. http://prasadthangavel.blogspot.com/2013/12/why-volley-android-has-provided-two.html 참조
DEFAULT_BACKOFF_MULT를 0으로 만들어야한다고 생각합니다.
답변
타임 아웃을주기 위해 15 초가 걸리기 때문에 5 초를 사용하십시오.
int TIME_OUT = 500; //use 5 sec it will work fine with it..
request.setRetryPolicy(new DefaultRetryPolicy(
TIME_OUT,
DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));