Java 为什么我的截击请求这么慢?

Java 为什么我的截击请求这么慢?,java,android,android-volley,Java,Android,Android Volley,我正在使用截击发出JSON请求。在浏览器中,此请求需要约200毫秒。在我的应用程序中,相同的请求平均需要5.5秒(有时高达7-8秒)。这是我的密码: JsonArrayRequest request = new JsonArrayRequest(url, new Response.Listener<JSONArray>() { @Override public void onRespons

我正在使用截击发出JSON请求。在浏览器中,此请求需要约200毫秒。在我的应用程序中,相同的请求平均需要5.5秒(有时高达7-8秒)。这是我的密码:

    JsonArrayRequest request = new JsonArrayRequest(url,
            new Response.Listener<JSONArray>() {
                @Override
                public void onResponse(JSONArray response) {
                    //done, parse result
                }
            }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {
            //error
        }
    });

    Volley.newRequestQueue(context).add(request);
JsonArrayRequest请求=新的JsonArrayRequest(url,
新的Response.Listener(){
@凌驾
公共void onResponse(JSONArray响应){
//完成,解析结果
}
},new Response.ErrorListener(){
@凌驾
公共无效onErrorResponse(截击错误){
//错误
}
});
newRequestQueue(上下文).add(请求);

我继续使用OkHttp执行相同的请求,结果大约是1.5-2秒。为什么截击要花这么长时间?(显而易见的答案是使用OkHttp,但用OkHttp语法替换我的应用程序中的所有请求需要大量的工作)。我的代码中是否有错误,或者可能没有在截取中使用某些内容?

请尝试StringRequest而不是JsonArrayRequest,然后再次检查时间。可能耗时的过程是通过截取将字符串处理成Json数组