HttpClient连接服务器(HttpPost)

首先,注意一点,连接服务器都不在主线程中进行,因为连接服务需要时间,这里简要介绍相关实现
public static HttpClient hc = null;
public static String server1 = "http://192.168.6.74:8080/testHttpClient2/first";
private class DownloadPass extends Thread{
    try {
        hc = new DefaultHttpClient();
        HttpPost httppost = new HttpPost(server1);
        httppost.addHeader("Content-Type", "application/json");
        httppost.addHeader("User-Agent", "imgfornote");
        String model = android.os.Build.MODEL;
        SharedPreferences preference0 = getSharedPreferences("serialNo", MODE_PRIVATE);
        String serialNo = preference0.getString("serialNo", "0");
        JSONObject obj = new JSONObject();
        obj.put("serialNo", serialNo);
        httppost.setEntity(new StringEntity(obj.toString()));
        HttpResponse response;
        response = hc.execute(httppost);
        int code = response.getStatusLine().getStatusCode();
       if(code==200){
         str1 = EntityUtils.toString(response.getEntity());
      }
    
        if(str1!=null&&!str1.equals("")){
         obj = new JSONObject(str1);
         String url = obj.getString("url");
         String updated = obj.getString("updated");
         String serialNo1 = obj.getString("serialNo");
         Intent intent = new Intent(Loading.this,DownloadPassService.class);
         intent.putExtra("serialNo", serialNo1);
         intent.putExtra("url", url.trim());
         startService(intent);
        }else{
         SharedPreferences preference = getSharedPreferences("pass", MODE_PRIVATE);
         preference.edit().clear().putBoolean("pass", true).commit();
       }
   } catch(ClientProtocolException e){
    e.printStackTrace();
   } catch (IOException e) {
    mProgressHandler.sendEmptyMessage(20);
    e.printStackTrace();
   } catch (Exception e) {
    e.printStackTrace();
   } finally
   {
    //postMethod.releaseConnection();
    shutdownHttpClient();
   }

private void shutdownHttpClient() {
        if (hc != null && hc.getConnectionManager() != null) {
         hc.getConnectionManager().shutdown();
        }
 }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值