본문 바로가기
프로그래밍 놀이터/안드로이드, Java

[android] AndroidHttpClient vs. DefaultHttpClient vs. HttpURLConnection

by 돼지왕 왕돼지 2012. 11. 9.
반응형





AndroidHttpClient vs. DefaultHttpClient vs. HttpURLConnection

- AndroidHttpClient 는 android 에서 제공, DefaultHttpClient 는 Apache 에서 만든 것.

- 둘 다 HTTPS, streaming upload, download, timeout, IPv6, connection pool 등을 지원한다.


Apache HTTP Client

- web browser 에 적합하며, 많은 갯수와 유동적인 API set 을 지원한다. 버그도 거의 없다. 

- 사이즈가 크기 때문에 호환성을 유지하며 API 확장하는 것이 어렵다.


 

HttpURLConnection ( Android HTTP Client wrapper class )

- 가벼운 HTTP Client 규모가 작아 확장에는 좋다.

- Froyo 이하 버전에서는 HttpURLConnection 에 엄청난 버그들이 있다. close() 가 특히 그렇다.

- Ginger bread 에서의 HttpURLConnection는 Accept-Encoding : gzip 을 자동으로 추가해준다.

- Ginger bread 에서는 추가적으로 개선사항들을 제공한다.

- ICS 에는 cache 관련된 기능추가도 되었다.


 

결론

- Froyo 이하 버전에서는 DefaultHttpClient 를 사용하고, 이후버전에서는 HttpURLConnection 을 사용하는 것이 좋다.


도움이 되셨다면 손가락 꾸욱~ ( 로그인 필요 x )



반응형

댓글