我使用Volley從服務器獲取數據。有時候,當網絡連接速度慢時,我得到的響應是兩次或三次或更多。我遵循了類似問題的答案,在Android volley sending data twice 。但我仍堅持同樣的problem.Below是我code.Please幫我Android凌空響應不止一次收到
代碼:
public void volley_get_list() {
RequestQueue requestQueue = Volley.newRequestQueue(getActivity());
StringRequest stringRequest = new StringRequest(Request.Method.POST, srch_lst_url, new Response.Listener<String>() {
@Override
public void onResponse(String response)
{
Log.e("Response", response);
if(!broadcast_unregister) {
getActivity().unregisterReceiver(broadcastReceiver);
Log.e("BroadcastReceiver", "Unregistered");
broadcast_unregister=true;
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
error.printStackTrace();
}
}) {
@Override
protected Map<String, String> getParams() {
HashMap<String,String> hashMap = new HashMap<>();
hashMap.put("search", typed_text);
hashMap.put("latt", lat);
hashMap.put("long", longt);
return hashMap;
}
};
RetryPolicy retryPolicy=new DefaultRetryPolicy(0,DefaultRetryPolicy.DEFAULT_MAX_RETRIES,DefaultRetryPolicy.DEFAULT_BACKOFF_MULT);
stringRequest.setRetryPolicy(retryPolicy);
stringRequest.setShouldCache(false);
requestQueue.add(stringRequest);
requestQueue.start();
}