在Android中,可以有多種方式來實作網絡程式設計:
建立URL,并使用URLConnection/HttpURLConnection
使用HttpClient
使用WebView
java.net.*下面提供了通路 HTTP 服務的基本功能。使用這部分接口的基本操作主要包括:
建立 URL 以及 URLConnection / HttpURLConnection 對象
設定連接配接參數
連接配接到伺服器
向伺服器寫資料
從伺服器讀取資料
源碼:
對于HttpClient類,可以使用HttpPost和HttpGet類以及HttpResponse來進行網絡連接配接。
<a href="http://images.cnblogs.com/cnblogs_com/feisky/WindowsLiveWriter/Android_123B7/image_2.png" target="_blank"></a>
Android手機中内置了一款高性能webkit核心浏覽器,在SDK中封裝成了WebView元件。
1. webview的XML定義:
2.Manifest檔案中權限的設定:
<uses-permission android:name="android.permission.INTERNET" />
3.如果想要支援JavaScript:
webview.getSettings().setJavaScriptEnabled(true);
4.如果需要在WebView中顯示網頁,而不是在内置浏覽器中浏覽,則需要mWebView.setWebViewClient,并重寫shouldOverrideUrlLoading方法。
5.如果不做任何處理,在顯示你的Brower UI時,點選系統“Back”鍵,整個Browser會作為一個整體“Back"到其他Activity中,而不是希望的在Browser的曆史頁面中Back。如果希望實作在曆史頁面中Back,需要在目前Activity中處理Back事件:mWebView.goBack();
<a href="http://images.cnblogs.com/cnblogs_com/feisky/WindowsLiveWriter/Android_123B7/image_4.png" target="_blank"></a>
以上是采用loadUrl方法實作網頁的加載,也可以采用loadData或者loadDataWithBaseURL方法實作網頁的加載:
webview.loadData(html, “text/html”, "utf-8”);
如果html中包含中文,則需要webview.loadData(URLEncoder.encode(html,encoding), mimeType, encoding);
對于本地圖檔或網頁的顯示,可以使用loadUrl,不過Url的位址字首為file:///,如"file:///android_asset/test.htm”。
本文轉自feisky部落格園部落格,原文連結:http://www.cnblogs.com/feisky/archive/2010/01/13/1646919.html,如需轉載請自行聯系原作者