2017-12-17 24 views
-1

ここで私のボレーコードですが、onResponse()とonErrorResponse()は呼び出されません。これらのmetodがスキップされるため、Log行は決して印刷されません。しかし、最後のログ行はlogcatに現れ、jsObjRequestは常にnullです。ボレーコードonResponse()とonErrorResponse()は呼び出されません

String url = "A valid url"; 
JsonObjectRequest jsObjRequest = new JsonObjectRequest(Request.Method.GET, 
    url, null, new Response.Listener<JSONObject>() { 
    @Override 
    public void onResponse(JSONObject response) { 
     Log.e("onResponse",""+response); 
    } 
    }, new Response.ErrorListener() { 
    @Override 
    public void onErrorResponse(VolleyError error) { 
     Log.e("onErrorResponse", "" + error); 
    } 
    }); 
    Log.e("jsObjRequest", "" + jsObjRequest); 

答えて

0

あなたはあなたの要求をエンキューする必要があります。

RequestQueue queue = Volley.newRequestQueue(this); 

String url = "A valid url"; 
JsonObjectRequest jsObjRequest = new JsonObjectRequest(Request.Method.GET, 
url, null, new Response.Listener<JSONObject>() { 
    @Override 
    public void onResponse(JSONObject response) { 
     Log.e("onResponse",""+response); 
    } 
}, new Response.ErrorListener() { 
    @Override 
    public void onErrorResponse(VolleyError error) { 
     Log.e("onErrorResponse", "" + error); 
    } 
}); 
Log.e("jsObjRequest", "" + jsObjRequest); 

queue.add(jsObjRequest); 

はこれを参照してください。https://developer.android.com/training/volley/simple.html

0

あなたはREQUESTQUEUEにリクエストを追加する必要があります。あなたの状況では、これらの2行のコードをあなたの下に追加するだけで、それはうまくいくでしょう。

RequestQueue rQueue = Volley.newRequestQueue(this); 
rQueue.add(jsObjRequest); 
関連する問題