回答

15

我建議閱讀提供Android的API的教程。

這裏是一些隨機的例子,它使用DefaultHttpClient,通過簡單的文本搜索在examples-folder中找到。

編輯:示例源不是爲了顯示的東西。它只是請求url的內容並將其存儲爲字符串。下面是一個例子,顯示它所加載(只要它是字符串數據,如一個HTML的,CSS-或JavaScript文件):

main.xml中

<?xml version="1.0" encoding="utf-8"?> 
    <TextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/textview" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    /> 

在的onCreate您的應用程序的添加:

// Create client and set our specific user-agent string 
    HttpClient client = new DefaultHttpClient(); 
    HttpGet request = new HttpGet("http://stackoverflow.com/opensearch.xml"); 
    request.setHeader("User-Agent", "set your desired User-Agent"); 

    try { 
     HttpResponse response = client.execute(request); 

     // Check if server response is valid 
     StatusLine status = response.getStatusLine(); 
     if (status.getStatusCode() != 200) { 
      throw new IOException("Invalid response from server: " + status.toString()); 
     } 

     // Pull content stream from response 
     HttpEntity entity = response.getEntity(); 
     InputStream inputStream = entity.getContent(); 

     ByteArrayOutputStream content = new ByteArrayOutputStream(); 

     // Read response into a buffered stream 
     int readBytes = 0; 
     byte[] sBuffer = new byte[512]; 
     while ((readBytes = inputStream.read(sBuffer)) != -1) { 
      content.write(sBuffer, 0, readBytes); 
     } 

     // Return result from buffered stream 
     String dataAsString = new String(content.toByteArray()); 

     TextView tv; 
     tv = (TextView) findViewById(R.id.textview); 
     tv.setText(dataAsString); 

    } catch (IOException e) { 
    Log.d("error", e.getLocalizedMessage()); 
    } 

這個例子現在加載指定網址(在OpenSearchDescription在例如計算器)的內容和在TextView中寫入接收到的數據。

+0

當我實現這個代碼時,輸​​出結果什麼都沒有。 Plz先生親切地給我完整的代碼,使用httpclient訪問url中的數據 – 2011-03-23 20:11:14

+0

我改變了示例,以便它顯示TextView中接收到的數據。 – MacGucky 2011-03-23 20:39:00

0

Google Documentation

public DefaultHttpClient (ClientConnectionManager conman, HttpParams params)

創建從參數一個新的HTTP客戶端和連接管理器。

參數
"conman"連接管理器,
"params"參數

public DefaultHttpClient (HttpParams params) 
public DefaultHttpClient() 
3

這是一個普遍的代碼示例:

DefaultHttpClient defaultHttpClient = new DefaultHttpClient(); 

HttpGet method = new HttpGet(new URI("http://foo.com")); 
HttpResponse response = defaultHttpClient.execute(method); 
InputStream data = response.getEntity().getContent(); 
//Now we use the input stream remember to close it .... 
相關問題