The introduction of HTTP connection APIs on Android platform - Part II.
在 這篇 中,我介紹過如何使用 java.net.* package 中的 HttpURLConnection class 來使用 HTTP 這個服務。
在這,我要介紹的是 Android 中,另一個好用的 Apache HttpClient 4.0 模組。
提到 Apache 的 HttpClient,一般大家比較熟悉的都是 Jakarta Commons HttpClient 3.x。不過,今天 Android 整合的是,目前最新的 HttpClient 4.0。
要使用這個新的 HttpClient 4.0 模組,你至少要 import 下列這些 packages。
同樣地,就以 GET 的用法來說,最簡單的用法如下:
這個 HttpClient 4.0 模組,在目前 (2008.09) 還沒有正式 release。因此,官網上也沒有詳細的用法說明。不過,倒是有幾個還不錯的 範例程式。像是,如何透過 proxy 使用 http 服務,如何使用 http post。其中,我覺得最有用的是 如何同時啟動 multi-thread 的 http request 服務。
除了,java.net.* 中的 HttpURLConnection,以及 org.apache.commons.httpclient.* 中的 HttpClient 這兩個類別外。其實在 Android 中,還隱藏了幾個類似的東西。
第一個是 android.net.http.* 的 AndroidHttpClient(主要使用 Apache 的 HttpClient),另一個是 com.google.android.net.* 的 GoogleHttpClient(主要使用 AndroidHttpClient)。而這個 GoogleHttpClient 更是地圖程式(MapActivity)背後的主要 http request 引擎。另外,可以透過 http 安裝應用程式的 CheckinService,也是用 GoogleHttpClient。
不用找了,你在 SDK 文件上,是找不到這些類別的用法的。這些,目前都還是 undocumented 的。你得翻原始程式才看到的。
繼續閱讀全文...