android开发分享排球RequestQueue超时

%ignore_pre_1%

这是我的请C42;调用,我想改变或设置请求超时。 反正可能吗?

    您应该设置请求的RetryPolicy :

     myRequest.setRetryPolicy(new DefaultRetryPolicy( MY_SOCKET_TIMEOUT_MS, DefaultRetryPolicy.DEFAULT_MAX_RETRIES, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT)); 

    这会将您的代码更改为:

     RequestQueue mRequestQueue = Volley.newRequestQueue(getApplicationContext()); JsonObjectRequest request = new JsonObjectRequest(Method.GET, cityListUrl, null, new Listener() { public void onResponse(JSONObject jsonResults) { //Any Call } }, new ErrorListener(){ public void onErrorResponse(VolleyError arg0) { //Any Error log } } ); int socketTimeout = 30000;//30 seconds - change to what you want RetryPolicy policy = new DefaultRetryPolicy(socketTimeout, DefaultRetryPolicy.DEFAULT_MAX_RETRIES, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT); request.setRetryPolicy(policy); mRequestQueue.add(request); 

    如果您刚刚开始使用Volley ,则可能需要考虑使用droidQuery ,该configuration稍微容易一些:

     int socketTimeout = 30000; $.ajax(new AjaxOptions().url(cityListUrl) .timeout(socketTimeout) .success(new Function() { public void invoke($ d, Object... args) { JSONObject jsonResults = (JSONObject) args[0]; //Any call } }) .error(new Function() { public void invoke($ d, Object... args) { AjaxError error = (AjaxError) args[0]; Log.e("Ajax", error.toString()); } })); 

    PCF;这样的东西

     RetryPolicy retryPolicy = new DefaultRetryPolicy( YOUR_TIMEOUT_MS, YOUT_MAX_RETRIES, YOUR_BACKOFF_MULT ); JsonObjectRequest request = new JsonObjectRequest(...); request.setRetryPolicy(retryPolicy); 

    或者你可以实现你EA;己的RetryPolicy

    这对我有效:

    以上就是android开发分享排球RequestQueue超时相关内容,想了解更多android开发(异常处理)及android游戏开发关注(XD中文网www.xdcnz.com)。

     RequestQueue mRequestQueue = Volley.newRequestQueue(getApplicationContext()); JsonObjectRequest request = new JsonObjectRequest(Method.GET, cityListUrl, null, new Listener() { public void onResponse(JSONObject jsonResults) { //Any Call } }, new ErrorListener(){ public void onErrorResponse(VolleyError arg0) { //Any Error log } } ); int socketTimeout = 30000;//30 seconds - change to what you want RetryPolicy policy = new DefaultRetryPolicy(socketTimeout, DefaultRetryPolicy.DEFAULT_MAX_RETRIES, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT); request.setRetryPolicy(policy); mRequestQueue.add(request); 
     void RequestVolley() { // Instantiate the RequestQuee RequestQueue queue = Volley.newRequestQueue(getApplication()); //create new volley request JsonObjectRequest requestNew = new JsonObjectRequest(Request.Method.GET, Url, null, createMyReqSuccessListener(), createMyReqErrorListener()); //Response.Listener and Error.Listener defined afterwards //first param is TIMEOUT ...integer //second param is number of retries ...integer //third is backoff multiplier ...integer requestNew.setRetryPolicy(new DefaultRetryPolicy(6000, 1, 1)); queue.add(requestNew); } private Response.Listener  createMyReqSuccessListener() { return new Response.Listener  () { @Override public void onResponse(JSONObject response) { //do something } }; } private Response.ErrorListener createMyReqErrorListener() { return new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { //do something } }; } 
     String url = "https://api.joind.in/v2.1/events?start=" + start + "&resultsperpage=20&format=json"; Log.i("DREG", "onLoadMoreItems: " + url); final StringRequest stringRequest = new StringRequest(Request.Method.GET, url, new Response.Listener() { @Override public void onResponse(String response) { // Add Code Here } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { if (error instanceof NetworkError) { } else if (error instanceof ServerError) { } else if (error instanceof AuthFailureError) { } else if (error instanceof ParseError) { } else if (error instanceof NoConnectionError) { } else if (error instanceof TimeoutError) { Toast.makeText(getContext(), "Oops. Timeout error!", Toast.LENGTH_LONG).show(); } } } ); stringRequest.setRetryPolicy(new DefaultRetryPolicy( 10000, DefaultRetryPolicy.DEFAULT_MAX_RETRIES, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT)); requestQueue.add(stringRequest); 

        本文链接:https://xdcnz.com/6174.html