Sobes.tech
Junior — Middle

Come implementare l'invio di richieste singole o di gruppo?

sobes.tech AI

Risposta dell'AI

Per inviare richieste singole o di gruppo su Android, si utilizzano generalmente librerie per operazioni di rete come Retrofit, Volley o le classi standard HttpURLConnection.

Richiesta singola:

  • Si crea un oggetto richiesta con l'URL e i parametri necessari.
  • Viene inviata in modo asincrono, e il risultato viene gestito nel callback.

Richieste di gruppo:

  • È possibile inviare più richieste in parallelo, utilizzando ad esempio ExecutorService o le capacità della libreria.
  • Per invii sequenziali — avviare la richiesta successiva nel callback di quella precedente.
  • Per elaborare i risultati in parallelo — usare CountDownLatch, CompletableFuture o RxJava.

Esempio con Retrofit per una richiesta singola:

interface ApiService {
    @GET("users/{id}")
    Call<User> getUser(@Path("id") int userId);
}

ApiService api = retrofit.create(ApiService.class);
api.getUser(1).enqueue(new Callback<User>() {
    @Override
    public void onResponse(Call<User> call, Response<User> response) {
        if (response.isSuccessful()) {
            User user = response.body();
            // elaborazione
        }
    }

    @Override
    public void onFailure(Call<User> call, Throwable t) {
        // gestione errore
    }
});

Per richieste di gruppo, si possono lanciare più chiamate in parallelo e processare i risultati man mano che sono pronti.