为android的HttpClient添加请求超时时间

在以前做一个android的移动项目的时候,想为httpClient对象添加请求超时和读取超时时间,发现httpClient的对象实现的defaultHttpClient对象中就没有设置超时时间的方法,所以一直郁闷的,觉得怎么回没有,难道defaultHttpClient对象中已经封装了请求超时时间和读取时间,不过这样不是可扩张性不好了,最近在android论坛上面,发现了其实android的httpClient是可以的,不过设置在HttpConnectionParams的静态方法中设置,详细的我写了一段代码提供给大家:

 

 

[java] view plaincopy

  1.    private static final int REQUEST_TIMEOUT = 10*1000;//设置请求超时10秒钟  
  2.    private static final int SO_TIMEOUT = 10*1000;  //设置等待数据超时时间10秒钟  
  3.    /** 
  4.     * 添加请求超时时间和等待时间 
  5.     * @author spring sky  
  6.     * Email vipa1888@163.com 
  7.     * QQ: 840950105 
  8.     * My name: 石明政 
  9.     * @return HttpClient对象 
  10.     */  
  11.    public HttpClient getHttpClient(){  
  12.     BasicHttpParams httpParams = new BasicHttpParams();  
  13.     HttpConnectionParams.setConnectionTimeout(httpParams, REQUEST_TIMEOUT);  
  14.     HttpConnectionParams.setSoTimeout(httpParams, SO_TIMEOUT);  
  15.     HttpClient client = new DefaultHttpClient(httpParams);  
  16.     return client;  
  17. }  


上面的方法,可以为每个请求公用,以后维护也很方便!个人建议,把这个方法在写父类让子类继承,这样的话符合面向对象编程!

学习在于积累

posted @ 2012-01-18 14:37  郑文亮  阅读(4328)  评论(1编辑  收藏  举报