Android调用Restfull

  1. package com.example.android;   
  2.   
  3. import java.io.IOException;   
  4.   
  5. import android.app.Activity;   
  6. import android.os.Bundle;   
  7. import android.util.Log;   
  8. import android.view.View;   
  9. import android.widget.Button;   
  10. import android.widget.EditText;   
  11.   
  12. import org.apache.http.client.ClientProtocolException;   
  13. import org.apache.http.client.HttpClient;   
  14. import org.apache.http.client.ResponseHandler;   
  15. import org.apache.http.impl.client.BasicResponseHandler;   
  16. import org.apache.http.client.methods.HttpGet;   
  17. import org.apache.http.impl.client.DefaultHttpClient;   
  18.   
  19. public class AndroidApp extends Activity {   
  20.   
  21.     String URL = "http://the/url/here";   
  22.     InputStream is = null;
  23.     String result = "";   
  24.     String deviceId = "xxxxx" ;   
  25.     final String tag = "Your Logcat tag: ";   
  26.   
  27.     /** Called when the activity is first created. */  
  28.     @Override  
  29.     public void onCreate(Bundle savedInstanceState) {   
  30.         super.onCreate(savedInstanceState);   
  31.         setContentView(R.layout.main);   
  32.   
  33.         final EditText txtSearch = (EditText)findViewById(R.id.txtSearch);   
  34.         txtSearch.setOnClickListener(new EditText.OnClickListener(){   
  35.             public void onClick(View v){txtSearch.setText("");}   
  36.         });   
  37.   
  38.         final Button btnSearch = (Button)findViewById(R.id.btnSearch);   
  39.         btnSearch.setOnClickListener(new Button.OnClickListener(){   
  40.             public void onClick(View v) {   
  41.                 String query = txtSearch.getText().toString();   
  42.                 callWebService(query);   
  43.   
  44.             }   
  45.         });   
  46.   
  47.     } // end onCreate()   
  48.   
  49.     public void callWebService(String q){   
  50.         HttpClient httpclient = new DefaultHttpClient();   
  51.         HttpGet request = new HttpGet(URL + q);   
  52.         request.addHeader("deviceId", deviceId);   
  53.          final List dataList = new ArrayList();
             dataList.add(new BasicNameValuePair("abc", "abc"));
             dataList.add(new BasicNameValuePair("def", "def"));
             HttpEntity entity = new UrlEncodedFormEntity(dataList, "UTF-8"); 
             request.setEntity(entity);
  54.         try {   
  55.             HttpResponse resp = httpclient.execute(request);
  56.             is = resp.getEntity().getContent();
                if (is != null) {
                 String line;
                 BufferedReader reader = new BufferedReader(new InputStreamReader(is, "UTF-8"));
                 while ((line = reader.readLine()) != null) {
                  sb.append(line).append("/n");
                 }
                }
                String ret = sb.toString();
  57.         } catch (ClientProtocolException e) {   
  58.             e.printStackTrace();   
  59.         } catch (IOException e) {   
  60.             e.printStackTrace();   
  61.         }   
  62.         httpclient.getConnectionManager().shutdown();   
  63.         Log.i(tag, result);   
  64.     } 

你可能感兴趣的:(Android调用Restfull)