Android应用程序中的截击请求

Android应用程序中的截击请求,android,request,android-volley,Android,Request,Android Volley,在我的Android应用程序中,我有一个StringRequest并使用截击发送它。问题是onResponse和onErrorResponse都没有被调用!!我在应用程序的其他部分使用JSONRequest,我对它绝对没有问题。 我错过了什么 这已经困扰了我几个小时了,我不知道是什么原因造成的。非常感谢您提供的任何线索 代码如下: public class AccountManagerProxy { StringRequest req; public void run() { tr

在我的Android应用程序中,我有一个StringRequest并使用截击发送它。问题是onResponse和onErrorResponse都没有被调用!!我在应用程序的其他部分使用JSONRequest,我对它绝对没有问题。 我错过了什么

这已经困扰了我几个小时了,我不知道是什么原因造成的。非常感谢您提供的任何线索

代码如下:

public class AccountManagerProxy  {
StringRequest req;

public void run() {
    try {
        String s1 = URLEncoder.encode("user", "UTF-8");
        String s2 = URLEncoder.encode("pass", "UTF-8");
        String uri = String.format("http://****/token?grant_type=password&username=%1$s&password=%2$s", s1, s2);
        req = new StringRequest(Request.Method.GET, uri, new Response.Listener<String>() {
            @Override
            public void onResponse(String response) {
                VolleyLog.v("Response:%n %s", response);
                Log.d("##", "##");
            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                VolleyLog.e("Error: ", error.getMessage());
                Log.d("@@", "@@");
            }
        }) {
            @Override
            public Map<String, String> getHeaders() throws AuthFailureError {
                Map<String, String> params = new HashMap<String, String>();
                params.put("Content-Type", "application/x-www-form-urlencoded");
                return params;
            }
            @Override
            protected Response<String> parseNetworkResponse(NetworkResponse response) {
                String parsed;
                try {
                    parsed = new String(response.data, HttpHeaderParser.parseCharset(response.headers));
                } catch (UnsupportedEncodingException e) {
                    parsed = new String(response.data);
                }
                return Response.success(parsed, HttpHeaderParser.parseCacheHeaders(response));
            }
        }
        ;

    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    } Singleton.getInstance().getRequestQueue().add(req);
}
公共类AccountManagerProxy{
StringRequest-req;
公开募捐{
试一试{
字符串s1=URLEncoder.encode(“用户”、“UTF-8”);
字符串s2=URLEncoder.encode(“pass”,“UTF-8”);
字符串uri=String.format(“http://**/token?grant_type=password&username=%1$s&password=%2$s”,s1,s2);
req=newstringrequest(Request.Method.GET,uri,new Response.Listener()){
@凌驾
公共void onResponse(字符串响应){
VolleyLog.v(“响应:%n%s”,响应);
Log.d(“##”,“##”);
}
},new Response.ErrorListener(){
@凌驾
公共无效onErrorResponse(截击错误){
e(“Error:,Error.getMessage());
Log.d(","",;
}
}) {
@凌驾
公共映射getHeaders()引发AuthFailureError{
Map params=新的HashMap();
参数put(“内容类型”、“应用程序/x-www-form-urlencoded”);
返回参数;
}
@凌驾
受保护的响应parseNetworkResponse(NetworkResponse响应){
字符串解析;
试一试{
parsed=新字符串(response.data,HttpHeaderParser.parseCharset(response.headers));
}捕获(不支持的编码异常e){
parsed=新字符串(response.data);
}
返回Response.success(已解析,HttpHeaderParser.parseCacheHeaders(Response));
}
}
;
}捕获(不支持的编码异常e){
e、 printStackTrace();
}Singleton.getInstance().getRequestQueue().add(req);
}

}

try块中是否可能存在异常,并且StringRequest行永远不会执行?在try块的底部打印一条日志消息,只是为了检查它是否已执行,或者在catch块中打印log-in,您最终是否正确处理了这个问题?