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
ExecutorServiceo le capacità della libreria. - Per invii sequenziali — avviare la richiesta successiva nel callback di quella precedente.
- Per elaborare i risultati in parallelo — usare
CountDownLatch,CompletableFutureo 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.