第一步:重新RetryHandler
...
class MyHttpRetryHandler extends HttpRetryHandler {
@Override
public boolean canRetry(UriRequest request,Throwable ex,int count) {
blackList.add(SocketTimeoutException.class); //添加请求失败异常类、这里是添加超时异常、便于重试
if(count == maxRetryCount){
//count 重试次数
//maxRetryCount 最大重试次数
}
if(count > maxRetryCount){
return false; //重试次数大于最大重试次数时,退出重试
}
return true;
}
}
...
第二步:设置重试
...
private void saveParams(HttpRequest httpRequest){
try{
httpRequest.params.setCOnnectTimeount(30*1000) //超时时间
httpRequest.params.setMaxRetryCount(1); //失败 重启次数
httpRequest.params.setHttpRetryHandler(new MyHttpRetryHandler()); //设置重试
}catch (Exception e){
e.primtStackTrace();
}
}
...