一個簡單的HTTP請求在J2ME中是用以下方法實現的:
123456 |
HttpConnection conn = (HttpConnection) Connector.open("www.baidu.com", Connector.READ, true);conn.setRequestMethod("GET");conn.setRequestProperty("accept", "*/*");String location = conn.getRequestProperty("location");int resCode = conn.getResponseCode();InputStream stream = conn.openInputStream(); |
在Android中實現如下:
123456789 |
URL url = new URL("www.baidu.com");HttpURLConnection conn = (HttpURLConnection) url.openConnection();conn.setDoInput(true);conn.setConnectTimeout(10000);conn.setRequestMethod("GET");conn.setRequestProperty("accept", "*/*");String location = conn.getRequestProperty("location");int resCode = conn.getResponseCode();InputStream stream = conn.getInputStream(); |
總結了一下,有以下幾點不同之處:
- J2ME中的串連從Connector開啟,Android中從URL對象開啟
- 要設定串連是否可讀寫,J2ME中可以直接在Connector.Open時設定,而在Android中必須使用setDoInput(boolean)和setDoOutput(boolean)方法設定
- 在J2ME中可以在Connector.Open中對串連進行逾時設定,在Android中使用setConnectTimeout(int)不僅可以對連線逾時進行設定,還能設定逾時時間,參數為0時忽略連線逾時