Android 9 이상부터 사용할 수 없게 된다(이유는 9 이후부터 TLS 1.2를 사용하도록 보안에 관한 변경사항이 있었습니다). 이에 따라 TLS 1.0 및 TLS 1.1 프로토콜은 Android 9에서 사용할 수 없게 되었습니다. 이러한 변경사항으로 인해 HttpCient를 사용하는 앱에서는 보안관련 취약점이 발생할 수 있기 때문에 Android에서 더 이상 HttpCient를 사용하지 못하도록 Deprecated 처리하였습니다.) 2. HttpCient는 Thread의 안정성에 문제가 있어 Multi-Thread 환경에서 Safety하지 않습니다.3. Apache Http Client는 더 이상 Apache에서 업데이트하지 않는 버려진 API입니다. 이 때문에 보안 관련 문제가 발생할 가능성이 매우 높습니다.(더 이상 해당 API를 업데이트 해주지 않는 이유는.. JDK11 이후부터는 기본적으로 내장된 Http Client가 존재하기 때문에 더 이상 해당 라이브러리를 업데이트할 이유가 없었기 때문에) 4. Android 6.0 이상부터 OkHttp, Retrofit, Volley와 같은 라이브러리가 기본적으로 포함되어 있습니다. 보안과 성능이 더 뛰어난 라이브러리가 있는데… HttpCient를 쓸 이유가 없잖아요.. 이런 문제들 때문에 현재 안드로이드에서는 Http 대신 OkHttp, Retrofit, Volley 등을 사용하는 것이 권장되고 있습니다.
Http Client를 간단히 설명하면 HTTP 프로토콜을 사용하여 웹 서버와 통신하기 위한 API를 제공하는 자바 클래스입니다.HTTP Client 클래스는 네트워크 통신을 쉽게 처리할 수 있도록 지원하며, 다양한 HTTP 요청 및 응답을 처리할 수 있는 다양한 메서드를 제공합니다. Http Client가 Deprecated된 이유?
Http Client는 이러한 편리함 때문에 초기 안드로이드 프로젝트에서 매우 자주 사용되었던 API였습니다.하지만 어느 순간부터 Http Client는 더 이상 사용하지 않게 되었고, 결국 Deprecated까지 된 것입니다. 왜 이렇게 되었을까요?
처음에는 딱 앞으로 나왔잖아… 왜 갑자기 이렇게 된 거야…
처음에는 딱 앞으로 나왔잖아… 왜 갑자기 이렇게 된 거야…