Android HttpURLConnection及HttpClient选择

介绍Android中Http请求方式的选择、区别及几个常用框架对API的选择

1. 两种请求方式对比
Android Http请求API主要分两种:
第一种是Java的HttpURLConnection,默认带gzip压缩
第二种Apache的HttpClient,默认不带gzip压缩
两种方式请求connection都是keep alive,默认User-Agent不同。

关于两种方式发出去的请求头对比图如下:

上图是通过抓包抓包的,具体如何抓包可参考: Android利用Fiddler进行网络数据抓包
测试代码见: android-http-api-compare@github, 测试APK见: http-api-compare.apk

 

2. 常用Http框架对Http API的选择
Retrofit及Volley框架默认在Android API 9及以上都是用HttpURLConnection,9以下用HttpClient。

这样我们也能看出就算我们自己不使用框架对这两个API的选择了.

 

3. GZip压缩
一般对于API请求需带上GZip压缩,因为API返回数据大都是JSon串之类字符串,GZip压缩后内容大小大幅降低,下面是这两个网页GZip压缩前后对比,都是第一条表示GZip压缩后,第二条为压缩前

更多关于网络请求优化请参考: Android性能优化第四部分网络的介绍

相关文章:

  • 2014 年 2 月 17 日 -- Android网络缓存
  • 2014 年 5 月 5 日 -- Android Touch事件传递机制
  • 2013 年 12 月 27 日 -- Android开源项目第二篇——工具库篇
  • 2013 年 7 月 29 日 -- Java(Android)线程池
  • 2013 年 8 月 16 日 -- 性能优化之Java(Android)代码优化
  • 2013 年 10 月 8 日 -- Android常用工具类

你可能感兴趣的:(httpclient,android,android,android,http,android,android,GZip)