4

Android用のvolleyネットワーキングライブラリを使用しています。すべての応答リスナーを個別にチェックするのではなく、一連の要求が終了したときに通知を受け取る方法を探しています (私もそうしています)。すべてのタスクが完了したときにキューからコールバックを取得する簡単な方法はありますか?

4

2 に答える 2

1

私は別の方法を見つけました。それはうまく機能します。

RequestQueue queue = Volley.newRequestQueue(getApplicationContext());
  final AtomicInteger requestsCounter = new AtomicInteger(0);

  for (String data: someArray) {
    requestsCounter.incrementAndGet();

    queue.add(new StringRequest(
      Request.Method.GET,
      "https://stackoverflow.com",
      response -> {
         ...some stuff for response
      },
      error -> {
         ...catch error here
      }
  ));

  queue.addRequestFinishedListener(request -> {
      requestsCounter.decrementAndGet();

      if (requestsCounter.get() == 0) {
          ...all requests are done
      }
  });
}
于 2017-11-03T14:05:22.760 に答える