Sobes.tech
Junior — Middle

Кадом асбобҳо ва китобхонаҳоро барои иҷрои протоколҳои шабакавӣ ва муоширати шабакавӣ истифода мебаред?

sobes.tech AI

Ҷавоб аз AI

Android-да торкуўчи протоколҳоро ва шабакавии ҳамкориро амалӣ кардан, одатан аз воситаҳо ва китобхонаҳои зерин истифода мебаранд:

  • OkHttp — китобхонаи қавии мизоҷи HTTP, ки талаботи асинхронӣ, кеш ва interceptors-ро дастгирӣ мекунад.
  • Retrofit — китобхона барои сохтани мизоҷони API REST ба осонӣ дар болои OkHttp, имкон медиҳад, ки интерфейсҳои API-ро тавсиф ва ҷавобҳоро автоматӣ таҳлил кунад.
  • Volley — китобхонаи Google барои талаботи шабакавӣ бо дастгирии навбатҳо ва кеш.
  • WebSocket — барои кор бо протоколи WebSocket, метавон аз OkHttp ё китобхонаҳои махсус истифода бурд, масалан, Java-WebSocket.
  • Socket API — барои ҳамкории пастсуръат тавассути TCP/UDP, метавон аз сокетҳои стандартии Java истифода кард.

Масалан, истифодаи Retrofit барои дархости GET:

public interface ApiService {
    @GET("users/{user}")
    Call<User> getUser(@Path("user") String userId);
}

Retrofit retrofit = new Retrofit.Builder()
    .baseUrl("https://api.example.com/")
    .addConverterFactory(GsonConverterFactory.create())
    .build();

ApiService service = retrofit.create(ApiService.class);
Call<User> call = service.getUser("123");
call.enqueue(new Callback<User>() {
    @Override
    public void onResponse(Call<User> call, Response<User> response) {
        if (response.isSuccessful()) {
            User user = response.body();
            // маълумотҳоро коркард кардан
        }
    }

    @Override
    public void onFailure(Call<User> call, Throwable t) {
        // хатоҳоро идора кардан
    }
});