當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]Android平臺簡易即時通訊方案

1 Android平臺簡介

Android是Google公司于2007年11月5日推出的手機操作系統(tǒng),經(jīng)過2年多的發(fā)展,Android平臺在智能移動領(lǐng)域占有不小的份額,由Google為首的40多家移動通信領(lǐng)域的領(lǐng)軍企業(yè)組成開放手機聯(lián)盟(OHA)。Google與運營商、設(shè)備制造商、開發(fā)商和其他第三方結(jié)成深層次的合作伙伴關(guān)系,希望通過建立標(biāo)準(zhǔn)化、開放式的移動電話軟件平臺,在移動產(chǎn)業(yè)內(nèi)形成一個開放式的生態(tài)系統(tǒng)。正因如此,Android正在被越來越多的開發(fā)者和使用者所接受。

論文簡單介紹Android平臺的特性,主要闡述了基于Android平臺簡易即時通訊(IM)的作用和功能以及實現(xiàn)方法。

2 Android平臺特性與即時通訊的研究

Android平臺框架共由5部分組成。底層核心是基于Linux 2.6內(nèi)核開發(fā)的獨立操作系統(tǒng),該層用來提供系統(tǒng)的底層服務(wù),包括安全機制、內(nèi)存管理、進程管理、網(wǎng)絡(luò)堆棧及一系列的驅(qū)動模塊。中間是Android執(zhí)行環(huán)境,包括系統(tǒng)運行庫、Dalvik虛擬機、核心庫和一些C/C++庫等支持Android使用的各個組件。應(yīng)用層框架是開發(fā)人員使用這些API框架來開發(fā)自己的應(yīng)用,簡化了應(yīng)用程序開發(fā)的架構(gòu)設(shè)計。應(yīng)用層程序是用Java語言編寫的運行在虛擬機上的程序 。整個Android平臺框架如圖1所示。

即時通訊(IM)是一個終端連往一個即時通訊網(wǎng)路的服務(wù)。即時通訊與e-mail的不同在于它的交談是即時的。大部分的即時通訊服務(wù)提供了在線提醒的特性——顯示聯(lián)絡(luò)人名單,聯(lián)絡(luò)人是否在線,能否與聯(lián)絡(luò)人交談等。近幾年即時通訊發(fā)展特別迅速,即時通訊的功能日益豐富,由PC客戶端發(fā)展到移動客戶端,逐漸發(fā)展成一個綜合化信息平臺,國內(nèi)市場上知名的即時通訊工具有騰訊QQ,新浪UC,中國移動飛信等,但這些產(chǎn)品都有著很嚴重的安全威脅,如ID被盜、隱私威脅、病毒威脅等。為了減小這些威脅,可以在企業(yè)內(nèi)部開發(fā)自己的即時通訊軟件,減少為未知用戶帶來的威脅。

3 簡易即時通訊功能及設(shè)計

3.1 簡易通訊的功能

本設(shè)計實現(xiàn)了在Android平臺上開發(fā)即時手機通訊系統(tǒng),它能夠使用戶在手機客戶端上登錄服務(wù)器,方便、迅捷地收發(fā)即時消息。隨著研究的深入,可以在該系統(tǒng)上實現(xiàn)圖片的傳輸和接收,以及其他一些功能,這樣可以使該系統(tǒng)功能更加多樣化。

3.2 簡易通訊系統(tǒng)框架介紹

通訊系統(tǒng)架構(gòu)采用C/S模式,即客戶端/服務(wù)器的體系結(jié)構(gòu)??蛻舳耸腔贏ndroid平臺進行開發(fā),通過3G 網(wǎng)絡(luò)與Internet建立連接,通過服務(wù)器實現(xiàn)Android客戶端之間的即時通訊??蛻舳素撠?zé)初始化通信過程,進行即時通訊時,由客戶端負責(zé)向服務(wù)器端發(fā)起連接請求。服務(wù)器端采用開源的Openfire 作為服務(wù)器,允許多個客戶端同時登錄,并且同時連接到一個服務(wù)器上。服務(wù)器對每個客戶端進行認證,對認證通過的客戶端創(chuàng)建會話,實現(xiàn)客戶端與客戶端之間的通訊。

3.3 客戶端的解決方案

系統(tǒng)的客戶端定位于Android平臺的手機,采用SIMPLE 協(xié)議作為即時通訊協(xié)議,SIMPLE(SIP for InSTant Messaging and Presence Levera—ging Extensions)是SIP(Session Initiation Proto—co1)的擴展,它為SIP協(xié)議制定了一整套的架構(gòu)和擴展方面的規(guī)范,用于支持IM。SIMPLE通過SIP來傳遞狀態(tài)信息和實現(xiàn)分布的信息表示。根據(jù)協(xié)議規(guī)則,采用Android平臺提供的XML解析包對XML進行解析。根據(jù)Activity模塊運行于主線程的特點,采用多線程 技術(shù)來解決系統(tǒng)通信問題。系統(tǒng)的用戶信息和聊天信息存儲在An—droid平臺自身所帶的SQLite數(shù)據(jù)庫中。客戶端功能模塊如圖2所示。

3.4 服務(wù)器端解決方案

系統(tǒng)服務(wù)器端采用開源的Openfire來建立即時通信服務(wù)器。Openfire采用Java語言進行開發(fā),Java語言具有跨平臺的特點,因此Openfire服務(wù)器可以架設(shè)于多種操作系統(tǒng)平臺上。Openfire服務(wù)器的內(nèi)核主要由服務(wù)器連接管理組件、會話管理組件、數(shù)據(jù)存儲組件和傳輸器組件等組成。

Openfire實現(xiàn)了插件機制,方便擴展,通過安裝與異構(gòu)網(wǎng)絡(luò)通訊的插件,便能與其他的通訊軟件實現(xiàn)通訊。在網(wǎng)絡(luò)連接中采用Apache的Mina框架來實現(xiàn)網(wǎng)絡(luò)連接,Mina框架使用非阻塞式的高性能I/O底層,采用異步I/O事件和事件驅(qū)動機制,使服務(wù)器具有很高的效率和性能,從而能夠及時處理大量的客戶端連接事件和VO 隨機事件,單臺服務(wù)器可支持上萬個并發(fā)用戶。服務(wù)器與客戶端的連接示意圖如圖3所示。

3.5 通信系統(tǒng)結(jié)構(gòu)

隨著移動通信與Internet的飛速發(fā)展及其相互融合,3G無線網(wǎng)絡(luò)使無線網(wǎng)絡(luò)高速接入Inter—net成為現(xiàn)實,從而移動客戶端可以接入到Inter—net的服務(wù)。系統(tǒng)客戶終端通過3G無線網(wǎng)絡(luò)采用TCP協(xié)議連接到服務(wù)器,通過SIMPLE即時通訊協(xié)議進行及時通訊。

在移動網(wǎng)絡(luò)中,移動終端接人到3G無線網(wǎng)絡(luò)。

網(wǎng)關(guān)移動交換中心GMSC(Gateway Mobile Swim—hing Center)為用戶提供分組路由、隧道和跟蹤移動終端的位置等功能。UMTS(Universal Mobile Tele—communications System)提供3G網(wǎng)絡(luò)內(nèi)部與外部網(wǎng)絡(luò)的路由和封裝,分配TP地址,實現(xiàn)與Intemet網(wǎng)絡(luò)的互通。通信系統(tǒng)結(jié)構(gòu)示意圖如圖4所示。[!--empirenews.page--]

3.6 系統(tǒng)工作流程

服務(wù)器對用戶輸入的用戶名和密碼進行身份驗證,驗證成功后,客戶端從服務(wù)器端讀取客戶端的個人信息,并更新好友列表和群組信息,服務(wù)器端響應(yīng)客戶端的各種請求,客戶端可發(fā)送接收信息,通訊完畢退出系統(tǒng)登錄狀態(tài)。這樣,一個簡易即時通訊系統(tǒng)便實現(xiàn)了。圖5是認證流程示意圖。客戶端軟件使用Java和XML語言在eclipse集成開發(fā)環(huán)境中開發(fā),基于Andriod 1.5模擬器開發(fā)的用戶登錄界面如圖6所示。

4 結(jié)語

該設(shè)計主要討論了基于Android平臺的簡易即時通訊系統(tǒng),研究了在開源服務(wù)器Openfire上各個移動客戶端和服務(wù)器之間的通信系統(tǒng)結(jié)構(gòu),實現(xiàn)了客戶端功能。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉