手機端通信應用的開發

目前應用在手機端的各類各樣的即時通信軟件層出不窮,服務提供商也提供了愈來愈豐富的通信服務功能。隨着互聯網的發展,即時通信的運用將日益普遍,即時通信軟件業方興未艾。 現在市場競爭愈來愈激烈,如何在有限的時間內完成項目把主要精力投入項目的業務邏輯處理上,加快項目開發進展,成爲如今開發類工做的重中之重。 下面介紹一個基於Android 平臺的簡易即時通信系統,研究了在開源服務器Openfire 上各個移動客戶端和服務器之間的通訊系統結構,實現了客戶端功能。 
     Android 平臺框架共由5 部分組成。底層核心是基於Linux 2.6內核開發的獨立操做系統,該層用來提供系統的底層服務,包括安全機制、內存管理、進程管理、網絡堆棧及一系列的驅動模塊。中間是Android 執行環境,包括系統運行庫、Dalvik 虛擬機、核心庫和一些C /C ++庫等支持Android 使用的各個組件。應用層框架是開發人員使用這些API 框架來開發本身的應用,簡化了應用程序開發的架構設計。應用層程序是用Java語言編寫的運行在虛擬機上的程序。數據庫

    在Android 平臺上開發即時手機通信系統,它可以使用戶在手機客戶端上登陸服務器,方便、迅捷地收發即時消息。隨着研究的深刻,能夠在該系統上實現圖片的傳輸和接收,以及其餘一些功能,這樣可使該系統功能更加多樣化。通信系統架構採用C /S 模式,即客戶端/服務器的體系結構。
    客戶端負責初始化通訊過程,進行即時通信時,由客戶端負責向服務器端發起鏈接請求。服務器端採用開源的Openfire做爲服務器,容許多個客戶端同時登陸,而且同時鏈接到一個服務器上。服務器對每一個客戶端進行認證,對認證經過的客戶端建立會話,實現客戶端與客戶端之間的通信。

    系統的客戶端定位於Android 平臺的手機,採用SIMPLE協議做爲即時通信協議,SIMPLE(SIP for Instant Messaging and Presence LeveragingExtensions) 是SIP (Session Initiation Protocol)的擴展,它爲SIP 協議制定了一整套的架構和擴展方面的規範,用於支持IM。SIMPLE 經過SIP 來傳遞狀態信息和實現分佈的信息表示。根據協議規則,採用Android 平臺提供的XML 解析包對XML 進行解析。根據Activity 模塊運行於主線程的特色,採用多線程技術來解決系統通訊問題。系統的用戶信息和聊天信息存儲在Android平臺自身所帶的SQLite 數據庫中。

    系統服務器端採用開源的Openfire 來創建即時通訊服務器。Openfire 採用Java 語言進行開發,Java 語言具備跨平臺的特色,所以Openfire 服務器能夠架設於多種操做系統平臺上。Openfire服務器的內核主要由服務器鏈接管理組件、會話管理組件、數據存儲組件和傳輸器組件等組成。Openfire 實現了插件機制,方便擴展,經過安裝與異構網絡通信的插件,便能與其餘的通信軟件實現通信。

    在網絡鏈接中採用Apache 的Mina 框架來實現網絡鏈接,Mina 框架使用非阻塞式的高性能I /O 底層,採用異步I /O 事件和事件驅動機制,使服務器具備很高的效率和性能,從而可以及時處理大量的客戶端鏈接事件和I /O 隨機事件,單臺服務器可支持上萬個併發用戶。系統客戶終端經過3G 無線網絡採用TCP 協議鏈接到服務器,經過SIMPLE 即時通信協議進行及時通信。在移動網絡中,移動終端接入到3G 、4G無線網絡。網關移動交換中心GMSC(Gateway Mobile Switc- hing Center)爲用戶提供分組路由、隧道和跟蹤移動終端的位置等功能。UMTS(Universal Mobile TelecommunicationsSystem)提供網絡內部與外部網絡的路由和封裝,分配IP 地址,實現與Internet 網絡的互通。

    服務器對用戶輸入的用戶名和密碼進行身份驗證,驗證成功後,客戶端從服務器端讀取客戶端的我的信息,並更新好友列表和羣組信息,服務器端響應客戶端的各類請求,客戶端可發送接收信息,通信完畢退出系統登陸狀態。這樣,一個簡易即時通信系統便實現了。
手機硬件平臺 
最低硬件配置 
        CPU:TI OMAP 850,200MHz 
        ROM:32M  
        RAM:32M 
    推薦硬件配置 
        CPU:Qualcomm MSM 7201A,528MHz 
        ROM:128M  
        RAM:128M 安全

相關文章
相關標籤/搜索