天天看點

Android平台的可視即時通訊

    即時通訊是目前最為流行的通訊方式,而各種各樣的即時通訊軟體也層出不窮;服務提供商也提供了越來越豐富的通訊服務功能。随着網際網路的發展,即時通訊的運用将日益廣泛,即時通訊軟體業方興未艾。 如今市場競争越來越激烈,如何在有限的時間内完成項目,滿足客戶的需求成為企業決策者所需要面對的現實。推薦一下佰銳科技的AnyChat SDK可以讓企業越過複雜的底層技術實作,而把主要精力投入項目的業務邏輯處理上,加快項目開發進展,進而為企業赢得市場先機。 下面介紹一個基于Android 平台的簡易即時通訊系統,研究了在開源伺服器Openfire 上各個移動用戶端和伺服器之間的通信系統結構,實作了用戶端功能。 

       Android 平台架構共由5 部分組成。底層核心是基于Linux 2.6核心開發的獨立作業系統,該層用來提供系統的底層服務,包括安全機制、記憶體管理、程序管理、網絡堆棧及一系列的驅動子產品。中間是Android 執行環境,包括系統運作庫、Dalvik 虛拟機、核心庫和一些C /C ++庫等支援Android 使用的各個元件。應用層架構是開發人員使用這些API 架構來開發自己的應用,簡化了應用程式開發的架構設計。應用層程式是用Java語言編寫的運作在虛拟機上的程式。

       即時通訊(IM)是一個終端連往一個即時通訊網路的服務。即時通訊與e-mail 的不同在于它的交談是即時的。大部分的即時通訊服務提供了線上提醒的特性——顯示聯絡人名單,聯絡人是否線上,能否與聯絡人交談等。近幾年即時通訊發展特

别迅速,即時通訊的功能日益豐富,由PC 用戶端發展到移動用戶端,逐漸發展成一個綜合化資訊平台,國内市場上知名的即時通訊工具有騰訊QQ,新浪UC,中國移動飛信等,但這些産品都有着很嚴重的安全威脅,如ID 被盜、隐私威脅、病毒威脅等。

     為了減小這些威脅,可以在企業内部開發自己的即時通訊軟體,減少為未知使用者帶來的威脅。

     在Android 平台上開發即時手機通訊系統,它能夠使使用者在手機用戶端上登入伺服器,友善、迅捷地收發即時消息。随着研究的深入,可以在該系統上實作圖檔的傳輸和接收,以及其他一些功能,這樣可以使該系統功能更加多樣化。通訊系統架構采用C /S 模式,即用戶端/伺服器的體系結構。用戶端是基于Android 平台進行開發,通過3G 網絡與Internet 建立連接配接,通過伺服器實作Android 用戶端之間的即時通訊。

      用戶端負責初始化通信過程,進行即時通訊時,由用戶端負責向伺服器端發起連接配接請求。伺服器端采用開源的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 随機事件,單台伺服器可支援上萬個并發使用者。

     随着移動通信與Internet 的飛速發展及其互相融合,3G 無線網絡使無線網絡高速接入Internet成為現實,進而移動用戶端可以接入到Inter- net 的服務。系統客戶終端通過3G 無線網絡采用TCP 協定連接配接到伺服器,通過SIMPLE 即時通訊協定進行及時通訊。在移動網絡中,移動終端接入到3G 無線網絡。網關移動交換中心GMSC(Gateway Mobile Switc- hing Center)為使用者提供分組路由、隧道和跟蹤移動終端的位置等功能。UMTS(Universal Mobile TelecommunicationsSystem)提供3G 網絡内部與外部網絡的路由和封裝,配置設定IP 位址,實作與Internet 網絡的互通。

       伺服器對使用者輸入的使用者名和密碼進行身份驗證,驗證成功後,用戶端從伺服器端讀取用戶端的個人資訊,并更新好友清單和群組資訊,伺服器端響應用戶端的各種請求,用戶端可發送接收資訊,通訊完畢退出系統登入狀态。這樣,一個簡易即時通訊系統便實作了。

      随着研究的進一步深入,Android的通訊系統會逐漸完善,相信Android 平台的即時通信系統會有着很好的應用前景。“佰銳3G手機視訊開發平台”是由佰銳科技獨立研發,具有自主知識産權的手機視訊開發平台,為現有的視訊應用系統提供手機終端接入平台,可應用于3G網絡環境。是國内首套專門針對手機終端定制的視訊應用SDK。 

手機軟體平台

手機硬體平台 

 最低硬體配置 

        CPU:TI OMAP 850,200MHz 

        ROM:32M  

        RAM:32M 

    推薦硬體配置 

        CPU:Qualcomm MSM 7201A,528MHz 

        ROM:128M  

        RAM:128M 

本文轉自 fanxiaojun 51CTO部落格,原文連結:http://blog.51cto.com/2343338/518465,如需轉載請自行聯系原作者

繼續閱讀