Какие знаешь инструменты для работы с сетью

«Какие знаешь инструменты для работы с сетью» — вопрос из категории Сети, который задают на 24% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Для работы с сетью в Android чаще всего используют:

  1. Retrofit – популярная библиотека для HTTP-запросов с поддержкой RxJava, Coroutines и удобной сериализацией через GSON/Moshi.
val retrofit = Retrofit.Builder()
    .baseUrl("https://api.example.com/")
    .addConverterFactory(GsonConverterFactory.create())
    .build()
  1. OkHttp – низкоуровневый клиент для HTTP с кешированием, перехватчиками и поддержкой WebSockets.

  2. Volley – стандартный HTTP-клиент от Google (простой, но устаревший).

  3. Ktor Client – мультиплатформенное решение от JetBrains с поддержкой Kotlin Coroutines.

  4. Firebase – для облачных операций (Firestore, Realtime DB, Cloud Functions).

Для асинхронности обычно используют Coroutines или RxJava. Для парсинга JSON – GSON, Moshi или kotlinx.serialization.