Back to project page SmartNavi.
The source code is released under:
Apache License
If you think the Android project SmartNavi listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
package com.ilm.sandwich.helferklassen; // ww w. ja v a2 s . c om import java.net.URI; import java.net.URISyntaxException; import java.util.ArrayList; import java.util.List; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpPost; import org.apache.http.impl.client.DefaultHttpClient; import org.apache.http.message.BasicNameValuePair; import org.apache.http.util.EntityUtils; /** * @author Markus Kniep | 2imba * * This class is the basis for HTTP requests within an asynchroneous task. UI changes resulting from the AsyncTask have to be made on the UI Thread. * Create a intern class which extends AsyncTask and do UI changes in the onPostExecute() * * @usage public class SendData extends AsyncTask <Void, Void, String> { ... } * */ public class HttpRequests { private List<BasicNameValuePair> postingData; private String response = null; private URI uri; private String header = null; private String requestMethod; public HttpRequests() { postingData = new ArrayList<BasicNameValuePair>(1); // standard method post requestMethod = "POST"; } /** * specifies the adress of a server/webpage/script where the request will be executed * * @param _uri * URL adress */ public void setURL(String _uri) { try { uri = new URI(_uri); } catch (URISyntaxException e) { //e.printStackTrace(); } } /** * set the user agent header for the HTTP request * * @param _header * User Agent */ public void setHeader(String _header) { header = _header; } /** * set the request method to "GET" or "POST" * * @param _requestMethod * Request Type */ public void setMethod(String _requestMethod) { requestMethod = _requestMethod; } /** * set post variables and values * * @param varName * name of variable * @param value * value of variable */ public void addValue(String varName, String value) { postingData.add(new BasicNameValuePair(varName, value)); } public void setBasicNameValuePairs(List<BasicNameValuePair> _data) { postingData = _data; } /** * execute the http server request * * @return response contains the server message */ public String doRequest() { DefaultHttpClient httpclient = new DefaultHttpClient(); response = null; if (requestMethod.equals("GET")) { // build typical GET url from postingData StringBuilder urlString = new StringBuilder(); for (int i = 0; i < postingData.size(); i++) { urlString.append("" + postingData.get(i).getName() + "=" + postingData.get(i).getValue()); if (i < postingData.size() - 1) urlString.append("&"); } String getURI = uri + "?" + urlString; HttpGet httpReq = new HttpGet(getURI); try { if (header != null) httpReq.setHeader("User-Agent", header); // execute HTTP GET request HttpResponse httpResponse = httpclient.execute(httpReq); HttpEntity httpEntity = httpResponse.getEntity(); response = EntityUtils.toString(httpEntity); } catch (Exception e) { // e.printStackTrace(); response = "Error: " + e; } } else if (requestMethod.equals("POST")) { HttpPost httpReq = new HttpPost(uri); try { httpReq.setEntity(new UrlEncodedFormEntity(postingData)); if (header != null) httpReq.setHeader("User-Agent", header); // execute HTTP POST request HttpResponse httpResponse = httpclient.execute(httpReq); HttpEntity httpEntity = httpResponse.getEntity(); response = EntityUtils.toString(httpEntity); } catch (Exception e) { // e.printStackTrace(); response = "Error: " + e; } } return response; } }