我想从一个URL获取一些数据,但服务器非常慢...
所以每当我使用volley获取数据时,我会得到
以下是我的volley请求...它适用于其他URL。
TimeOutError
,
有没有办法控制volley尝试获取数据的时间,因为服务器很慢...它需要一点时间
而且我还想持续运行这个请求来检查数据,我计划使用Timer...使用Timer来不断检查数据是否可行吗?以下是我的volley请求...它适用于其他URL。
public void checkData() {
StringRequest stringRequest = new StringRequest(Request.Method.POST, URL,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Log.i("Response",response);
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.i("Response",error.toString());
}
}){
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String,String> map = new HashMap<String,String>();
map.put("deviceID","none");
return map;
}
};
RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.add(stringRequest);
}
我需要在应用程序内部不断调用这些函数。
更新
我使用了
tringRequest.setRetryPolicy(new DefaultRetryPolicy(
30000,
DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
现在这个请求可以成功,我想让它在我的应用中持续进行...那么最好的方法是什么?