2017-11-07 13 views
8

में वॉली अनुरोध टैग प्राप्त करें मैं वॉली का उपयोग कर रहा हूं और मेरे पास कुछ एपीआई कॉल करने के लिए कतार है। कतार डेटाबेस से भरा है।प्रतिक्रिया

मैं

jsonObjectRequest.setTag(id);

बुला जवाब में से अनुरोध टैग सेट करने के लिए volley अनुरोध कतार अनुरोध जोड़ने से पहले, मैं database उस स्तंभ आईडी टैग आईडी अनुरोध करने के लिए बराबर है से एक स्तंभ निकालना चाहते हैं।

तो, मैं HttpRequestresponse में अनुरोध टैग कैसे प्राप्त कर सकता हूं?

+0

यह आपकी मदद कर सकता है [लिंक] (https://stackoverflow.com/questions/36127870/how-to-set-tag-to-the-request-and-get-it-from-response-volley-asynchronous -reque) –

+0

@ मोहम्मद फ़ारहान तो क्या आपका मतलब है कि मुझे अपने आवेदन में वॉली स्रोत कोड संकलित करना है? – FarshidABZ

+0

ठीक उसी उत्तर को स्वीकार किया जाता है, इसलिए आपको इसका पालन करना होगा। –

उत्तर

4

पहले एक श्रोता है कि आपके Volly वर्ग

/** Callback interface for delivering parsed responses. */ 
public interface Listener { 
    /** Called when a response is received. */ 
    public void onResponse(Object tag, JSONObject response); 
    public void onErrorResponse(Object tag, VolleyError error); 
} 

से प्रतिक्रिया दे और अब नीचे जहां श्रोता और टैग पारित रूप में विधि बना सकते हैं और Volly अनुरोध फोन पैदा करते हैं। जवाब में आप एक ही समय में टैग और प्रतिक्रिया प्राप्त कर सकते हैं।

public void callApi(String url, final Listener listener, final Object tag){ 
    JsonObjectRequest jsonObjReq = new JsonObjectRequest(Request.Method.GET, 
      url, null, 
      new Response.Listener<JSONObject>() { 

       @Override 
       public void onResponse(JSONObject response) { 
        listener.onResponse(tag,response); 
       } 
      }, new Response.ErrorListener() { 

     @Override 
     public void onErrorResponse(VolleyError error) { 
      listener.onErrorResponse(tag,error); 
     } 
    }); 

    // Adding request to request queue 
    AppController.getInstance().addToRequestQueue(jsonObjReq); 
} 

इसका सिर्फ नमूना कोड है, आप अपनी आवश्यकता पर संशोधित कर सकते हैं। अगर आपको किसी भी मदद की टिप्पणी की ज़रूरत है।