我正在使用排球发出呼叫服务器的请求,但是有时当网络中存在延迟时,它会再次向服务器发出请求。
但是根据我的要求,无论服务器是否响应,它都只能调用服务器一次。
最佳答案
public RetryPolicy myRetryPolicy(){
return new RetryPolicy() {
@Override
public int getCurrentTimeout() {
return 10000;
}
@Override
public int getCurrentRetryCount() {
return 0;
}
@Override
public void retry(VolleyError error) throws VolleyError {
Log.d(TAG, "Volley Error " + error.toString());
throw new VolleyError("Do Not Retry");
}
};
}
如果设置了自定义RetryPolicy,则在retry方法中抛出VolleyError。齐射绝不重试。
postRequest.setRetryPolicy(myRetryPolicy());
LogCat
11-05 13:00:36.078 6014-6314 / ******:Volley错误com.android.volley.TimeoutError
11-05 13:00:36.079 6014-6014 / *******:Volley错误com.android.volley.VolleyError:请勿重试