標籤:
HttpClient
public class MainActivity extends Activity { private Button button; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button = (Button)findViewById(R.id.buttonId); ButtonListener listener = new ButtonListener(); button.setOnClickListener(listener); } class ButtonListener implements OnClickListener{ @Override public void onClick(View view) { //原則:在主線程當中不能夠訪問網路 NetworkThread nt = new NetworkThread(); nt.start(); } } class NetworkThread extends Thread{ @Override public void run(){ //建立HttpClient HttpClient httpClient = new DefaultHttpClient(); //建立代表請求的對象,參數是訪問的伺服器位址 //http://www.baidu.com HttpGet httpGet = new HttpGet("http://www.marschen.com/data1.html"); //執行請求,擷取伺服器發還的相應對象 try { HttpResponse resp = httpClient.execute(httpGet); //檢查相應的狀態是否正常。檢查狀態代碼的值是否等於200 int code = resp.getStatusLine().getStatusCode(); if(code == 200){ //從相應對象當中取出資料 HttpEntity entity = resp.getEntity(); InputStream in = entity.getContent(); BufferedReader reader = new BufferedReader(new InputStreamReader(in)); String line = reader.readLine(); Log.d("HTTP", "從伺服器取得的資料位元:" + line); } } catch (Exception e) { e.printStackTrace(); } } } }
Android中 Http請求