Junior — Middle
Jak implementovat odesílání jednotlivých nebo skupinových požadavků?
sobes.tech AI
Odpověď od AI
Pro odeslání jednotlivých nebo skupinových požadavků v Androidu se obvykle používají knihovny pro síťové operace, například Retrofit, Volley nebo standardní třídy HttpURLConnection.
Jednotlivý požadavek:
- Vytvoří se objekt požadavku s potřebnou URL a parametry.
- Odesílá se asynchronně, výsledek se zpracovává v callbacku.
Skupinové požadavky:
- Může se odeslat několik požadavků paralelně, například pomocí
ExecutorServicenebo možností knihovny. - Pro sekvenční odeslání — spustit další požadavek v callbacku předchozího.
- Pro paralelní zpracování výsledků — použít
CountDownLatch,CompletableFuturenebo RxJava.
Příklad s Retrofit pro jednotlivý požadavek:
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();
// zpracování
}
}
@Override
public void onFailure(Call<User> call, Throwable t) {
// zpracování chyby
}
});
Pro skupinové požadavky lze spustit několik takových volání paralelně a zpracovávat výsledky podle jejich dostupnosti.