Sobes.tech
Junior — Middle

Kuidas rakendada üksik- või rühmapäringute saatmist?

sobes.tech AI

Vastus AI-lt

Selleks, et Androidis saata üksik- või grupipäringuid, kasutatakse tavaliselt võrgutegevuste raamatukogusid nagu Retrofit, Volley või standardseid HttpURLConnection klasse.

Üksikpäring:

  • Loob päringu objekti vajaliku URL-i ja parameetritega.
  • Saadab selle asünkroonselt ning tulemust töödeldakse tagasikutses.

Grupipäringud:

  • Võib saata mitu päringut paralleelselt, kasutades näiteks ExecutorService või raamatukogu võimalusi.
  • Sõltuvalt järjekorrast — käivitada järgmine päring eelneva tagasikutses.
  • Paralleelset tulemustöötlust saab teha kasutades CountDownLatch, CompletableFuture või RxJava.

Näide Retrofitiga ühe päringu kohta:

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();
            // töötlemine
        }
    }

    @Override
    public void onFailure(Call<User> call, Throwable t) {
        // vea töötlemine
    }
});

Grupipäringute puhul saab käivitada mitu sellist kutset paralleelselt ja töödelda tulemusi vastavalt nende kättesaadavusele.