Залп просьба вернуть тот же результат в андроид студию - PullRequest
0 голосов
/ 09 марта 2019

У меня есть окно восстановления, которое обновляется при открытии операции, и я могу удалить элемент в окне просмотра, и этот элемент удаляется в базе данных правильно. Но когда я повторяю попытку снова, я получаю те же данные. Данные не обновлены. Я использую adapter.notifyDataSetChanged(); после установки списка в адаптере утилита просмотра.

public class GetOrdersModel implements GetOrdersPre {

    private Context _context;
    private GetOrdersView _view;

    private List<Orders> list = new ArrayList<>();

    public GetOrdersModel(Context context,GetOrdersView view){this._context = context;this._view = view;}

    @Override
    public void Get_Orders(String usercode) {
        RequestQueue queue = Volley.newRequestQueue(_context);
        queue.getCache().clear();
        StringRequest request = new StringRequest(
                Request.Method.GET,
                DirectionU.BASE_URL_USERS + "getorders/" + usercode + "/",
                new Response.Listener<String>() {
                    @Override
                    public void onResponse(String response) {
                        if(!response.toString().equals("{\"success\":0}")) {
                            GsonBuilder builder = new GsonBuilder();
                            Gson gson = builder.create();
                            list.clear();
                            list = Arrays.asList(gson.fromJson(response, Orders[].class));

                            _view.Successfuly_getorders(list);
                        }else{
                            _view.Failed_getorders();
                        }
                    }
                }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                VolleyLog.d("orders","error is " + error.getMessage());
            }
        }){
            @Override
            public String getBodyContentType() {
                return "application/json; charset=utf-8";
            }
        };

        request.setRetryPolicy(new DefaultRetryPolicy(
                10000,
                DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
                DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
        request.setShouldCache(false);
        queue.add(request);
    }
}

1 Ответ

0 голосов
/ 17 июня 2019

//Before makeing your request
RequestQueue queue = Volley.newRequestQueue(this);
queue.getCache().clear();
req.setShouldCache(false);

//After makeing your request
 queue.add(req);
 queue.getCache().remove(url);
...