HTTTP

    private static void setProxy(HttpRequest request, HttpClient httpClient) {
        NetworkInfo networkInfo = UpgradeApplication.getNetworkInfo();
        if (networkInfo != null && networkInfo.getType() == ConnectivityManager.TYPE_WIFI) {
            Log.i(UpgradeApplication.TAG, "WIFI ENV, don't use proxy.");
        } else {
            if (UpgradeApplication.getProxyHost() != null
                    && !UpgradeApplication.getProxyHost().equals("")
                    && UpgradeApplication.getProxyPort() != -1) {
                Log.d(UpgradeApplication.TAG, "UpgradeApplication use proxy:"
                        + UpgradeApplication.getProxyHost() + ":"
                        + UpgradeApplication.getProxyPort());
                HttpParams params = httpClient.getParams();
                ConnRouteParams.setDefaultProxy(params, new HttpHost(UpgradeApplication
                        .getProxyHost(), UpgradeApplication.getProxyPort()));
                request.setParams(params);
            }
        }
    }

    private static int getXML(String uri, OutputStream outputStream) {
    	if (uri == null || "".equals(uri)){
    		Log.w(UpgradeApplication.TAG,"uri is null or empty");
    		return -1;
    	}
        HttpClient httpClient = new DefaultHttpClient();
        HttpGet request = new HttpGet(uri);
        int statusCode = -1;
        setProxy(request, httpClient);
        HttpResponse response = null;
        request.getParams().setIntParameter(HttpConnectionParams.SO_TIMEOUT,
        		UpgradeApplication.config.getSo_timeout());
        request.getParams().setIntParameter(HttpConnectionParams.CONNECTION_TIMEOUT,
        		UpgradeApplication.config.getConnection_timeout());
        try {
            response = httpClient.execute(request);
            statusCode = response.getStatusLine().getStatusCode();
            if (outputStream != null) {
                response.getEntity().writeTo(outputStream);
            }
        } catch (ClientProtocolException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
			if (httpClient != null
					&& httpClient.getConnectionManager() != null) {
				httpClient.getConnectionManager().shutdown();
				httpClient = null;
			}
		}
        return statusCode;
    }

你可能感兴趣的:(HTTTP)