齐射 - 在同一 Activity android 中有多个请求

Volley - more than one request in the same Activity android

我想使用 Volley 库发送两个不同的请求并在一个 Activity 中处理两个不同的响应。 我的 activity 实现了 onResponseListener,所以我只有一个 onResponse 方法,两个响应都在这里处理。由于它们在结构上完全相同,所以我分不清哪个是哪个。

我如何知道我收到了哪个请求的响应,以便我可以以不同的方式处理它们?有没有办法 "tag" 请求或类似的东西?

我可以设置某种检查变量,例如boolean firstRequestIsSent 当我发送请求时,然后在 onResponse 方法中检查它,但它是一个非常难看的解决方案。

非常感谢

您可以使用请求实例化一个新的 Response.Listener,而不是将 onResponse 实现为 class 的一部分。这样,您将为每个请求提供一个单独的侦听器。

StringRequest stringRequest = new StringRequest(Request.Method.GET, url,
        new Response.Listener() {
            @Override
            public void onResponse(String response) {
                 // individual response here
            }
        }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {
            // error here
        }
  });