Ответ
В Android для работы с HTTP-клиентами используются:
- HttpURLConnection – базовый клиент из Java, простой, но требует ручного управления потоками.
val url = URL("https://api.example.com")
val connection = url.openConnection() as HttpURLConnection
connection.requestMethod = "GET"
val responseCode = connection.responseCode
- OkHttp – популярная библиотека от Square с поддержкой HTTP/2, пулом соединений и гибкой настройкой.
val client = OkHttpClient()
val request = Request.Builder().url("https://api.example.com").build()
val response = client.newCall(request).execute()
- Retrofit – надстройка над OkHttp для работы с REST API через интерфейсы и автоматическую сериализацию.
interface ApiService {
@GET("users")
suspend fun getUsers(): List<User>
}
- Volley – клиент от Google, удобен для простых запросов, но устарел в пользу OkHttp/Retrofit.
Выбор зависит от задач: Retrofit + OkHttp – для сложных API, HttpURLConnection – для минимализма.