Android網絡連接開發 – Android移動開發技術文章_手機開發 Android移動開發教學課程

手機作為一種通訊終端(MMS),伴隨著網絡的升級而不斷的升級換代。1995年1G問世,手機隻能進行基本的語音通訊,1996-1997年2G(GSM,CDMA)及其後的GPRS,EDGE等技術的快速發展,手機開始逐漸增加瞭數據服務功能。2009年開始,3G在全世界開始大規模佈置以及蘋果創造性開發新型蘋果手機。手機慢慢的變成互聯網的終端,從而帶動瞭一個新的時代–移動互聯網時代。因此現代手機通常都支持這些常用網絡設備,如WIFI,NFC,藍牙等。

Android是由互聯網巨頭Google帶頭開發的,因此對網絡功能的支持是必不可少的。Google的應用層采用的是Java語言。所以JAVA支持的網絡編程方式Android都支持,同時Google還引入瞭Apache 的HTTP擴展包。另外,針對WIFI,NFC,分別提供的單獨的開發API.

表1展示瞭Android SDK中的一些與網絡有關的API包名

表1. Android SDK 網絡包

 

描述

API Level

Java.net

提供與聯網有關的類,包括流和數據包(datagram)sockets、Internet 協議和常見 HTTP 處理。該包是一個多功能網絡資源。有經驗的 Java 開發人員可以立即使用這個熟悉的包創建應用程序。

1

java.io

雖然沒有提供顯式的聯網功能,但是仍然非常重要。該包中的類由其他 Java 包中提供的 socket 和連接使用。它們還用於與本地文件(在與網絡進行交互時會經常出現)的交互

1

java.nio

包含表示特定數據類型的緩沖區的類。適合用於兩個基於 Java 語言的端點之間的通信。

1

org.apache.*

表示許多為 HTTP 通信提供精確控制和功能的包。可以將 Apache 視為流行的開源 Web 服務器。

1

android.net

除核心 java.net.* 類以外,包含額外的網絡訪問 socket。該包包括 URI 類,後者頻繁用於 Android 應用程序開發,而不僅僅是傳統的聯網方面。

1

android.net.http

包含處理 SSL 證書的類。

1

android.net.wifi

包含在 Android 平臺上管理有關 WiFi(802.11 無線 Ethernet)所有方面的類。

1

android.telephony.gsm

包含用於管理和發送 SMS(文本)消息的類。一段時間後,可能會引入額外的包來來為非 GSM 網絡提供類似的功能,比如 CDMA 或 android.telephony.cdma 等網絡。

1

Android.net.sip

包含Andriod平臺上管理有關SIP協議如建立和回應Voip的類

9

Android.nfc

包含所有用來管理近場通信相關的功能類

9

 

在Android中,常見有如下幾種情況的網絡編程開發:

  • 針對TCP/IP的Socket,SeverSocket編程和針對UDP的DatagramSocket,DatagramPackage這裡需要註意的是,考慮到Android設備通常是手持終端,IP都是隨著上網進行分配的。不是固定的。因此開發也是有一點與普通互聯網應用有所差異的。
  • 針對URL的URLConnection和HttpURLConnection
  • 針對HTTP,Google集成瞭Appache Http core和httpclient 4版本,因此特別註意Android不支持httpclient 3.x系列,而且目前並不支持Multipart(MIME),需要自行添加httpmime.jar
  • Android可以通過開源包如jackson去支持Xmlrpc和Jsonrpc,另外也可以用Ksoap2去實現Webservice
  • 基於WebView 進行開發,Google已經提供瞭一個基於chrome-lite的Web瀏覽器,直接就可以進行上網瀏覽網頁。

發佈留言