《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于Android平臺即時通信系統的設計與實現
基于Android平臺即時通信系統的設計與實現
摘要: 為解決在基于Linux操作系統的Android手機平臺上即時通信問題,實現在系統客戶端進行文本、圖片、音樂的傳送和播放。采用Java語言環境下Android應用開發工具和API接口,并使用Eclipse加上Android集成開發環境插件為手段,對客戶端架構、應用模塊框架、數據存儲、主要功能和核心模塊開發技術等全方面分析,從而提供了實現即時通信系統的客戶端解決方案。
Abstract:
Key words :

  摘要: 為解決在基于Linux 操作系統的Android 手機平臺上即時通信問題, 實現在系統客戶端進行文本、圖片、音樂的傳送和播放。采用Java 語言環境下Android 應用開發工具和API 接口, 并使用Eclipse 加上Android 集成開發環境插件為手段, 對客戶端架構、應用模塊框架、數據存儲、主要功能和核心模塊開發技術等全方面分析, 從而提供了實現即時通信系統的客戶端解決方案。

  0   引言

  Android 是Google 推出的一個基于Linux 操作系統, 包含底層框架, 中間件和開發環境的一套平臺系統。它支持流行的組件式程序設計, 具有針對性移動設備的Dalvik 虛擬機。瀏覽器核心是基于開源的WebKit 引擎, 對基于HTML 的各種語言具有良好的支持。圖像引擎使用基于openGLES1. 0 的三維圖形庫。本文的研究目的就是基于Android 平臺, 提出一種能為多種移動客戶端提供即時通信服務系統的客戶端解決方案。

  1   系統開發環境

  Android 的應用開發使用Java 語言環境下Android 應用開發工具和API 接口,包括支持各種分辨率的設備模擬器、調試工具、內存及性能分析圖表和Eclipse 集成開發環境插件在內的方便快捷的開發環境。

  2   客戶端設計

  系統客戶端主要實現與服務器端進行通信, 向服務器發送和接收相應的請求, 完成即時通信的過程。開發的客戶端基于Jabber 協議[ 4] , 可以實現用戶注冊和登錄、即時消息處理、好友的分組管理、在線狀態的監視等功能。

  2. 1   客戶端設計結構

  系統客戶端, 采用MVC 模式來進行構建, MVC 模式中應用系統被分成3 個部分: 模型( Model) 、視圖( View) 和控制器( Contr oller)。View 向用戶展示模型的狀態以及控制信息, CONt roller 作為控制器, 負責View 和Model 之間的流程控制, 客戶端MVC 結構如圖1 所示。采用MV C 模式架構進行設計,可以將視圖層與邏輯代碼以及數據模型層進行分離, 實現系統的松散耦合, 便于系統的維護和代碼的重用。同時, 在Android 中, 視圖層可以通過定義XML 文件的方式來設計用戶界面, 在數據模型層提供了Co ntent Pr ovider類來屏蔽底層具體的存儲設備細節, 從而使應用系統具有良好的數據遷移性。

圖1 客戶端MVC 結構圖

圖1  客戶端MVC 結構圖

  2. 2   應用模塊框架

  Android 中用戶界面允許采用定義XML 文件或編寫代碼建立。通過定義XML 文件來設計用戶界面便于代碼理解和重用, 效率較高。故系統選用定義XML文件來實現客戶端的用戶界面。Android 應用程序與用戶打交道的基本功能單位是活動( Activity ) , 它通過調用方法setContentView ( ) 加載視圖資源顯示。運行于后臺的應用程序可以通過Ser vice 來進行設計, 通過Binder 機制, 與相關的活動綁定在一起, 系統應用模塊架構如圖2 所示。

圖2 應用模塊框架圖

圖2  應用模塊框架圖

  2. 3   數據存儲

  客戶端采用Andr oid 平臺自身所帶的SQLite 數據庫來存儲用戶信息以及即時通信聊天信息, 使用文件存儲設備SDear d 來存儲圖片和音樂。使用contentPr ov ider 將SQLite 資料庫系統封裝起來, 讓應用程序直接使用能夠屏蔽數據庫差異性, 提供一致界面的contentPro vider 所提供的界面函數。

  2. 4   實現主要功能

  系統客戶端主要實現以下功能:

  ( 1) 注冊用戶: 填寫相關的個人信息進行注冊, 向服務器提交后服務器返回相應的信息;

  ( 2) 系統設置: 對系統的一些選項進行相應的設置;

  ( 3) 用戶設置: 對用戶基本信息和一些Jabber 選項進行設置;

  ( 4) 登錄和注銷: 選擇相應的服務, 輸入用戶名和密碼, 登錄即時通信系統, 或注銷用戶, 退出本系統;

  ( 5) 分組管理: 可以創建新的分組, 對分組信息進行修改或刪除;

  ( 6) 好友管理: 可以添加好友至某個分組, 修改好友的備注信息, 刪除好友;

  ( 7) 好友信息: 登錄后, 可以按照分組查看所有好友的信息;

  ( 8) 信息發送: 登錄后可給某位好友發送信息, 如果好友離線, 信息暫存于服務器中, 待其上線后接收;

   ( 9) 信息接收: 接收好友發送過來的信息, 并顯示;

 

  ( 10) 查看聊天記錄: 可查看與某位好友的聊天記錄。

  3   主要模塊設計

  系統的即時通信采用XMPP 協議, XMPP 是基于XML 的協議。在系統的即時通信過程中, 通信信息都是以XML 語句進行傳輸的, 而具體的消息內容則嵌入在XML 元素中。系統主要包括解析、加密、即時通信、圖片傳輸、音樂播放、圖片瀏覽等模塊, 各模塊設計如下:

  ( 1) 解析模塊。系統采用Android 平臺上提供的org . xmlpull. vl 解析包對XML 消息進行解析。XMPP協議中的XML 語句是一種樹型結構, 解析XMPP 協議的過程即對樹的遍歷, 節點的名字就是屬性的名字, 節點的值就是屬性的值。在解析中, 只對主要消息元素進行解析, 主要解析XMPP 協議的3 個頂層元素< message/>  、< Presence/  >和< iq/  >所包含的內容以及包含錯誤信息的元素 。解析完后, 封裝, 供應用模塊進行調用;

  ( 2) 加密模塊。加密模塊對發送和接收的消息進行加解密, 以確保通訊數據的安全。該加密機制是分兩步完成的, 首先將二進制碼轉換成BASE64 碼。在轉換成BASE64 碼之后, 再進行加密, 加密算法由各網絡實體建立會話時通過TLS 協商。

  ( 3) 即時通信模塊。客戶端通過GPRS 無線網絡采用TCP 協議連接到Openfire 服務器, 通過服務器作為即時通信平臺, 實現客戶端與客戶端之間即時通信。

  為了解決T CP 在連接服務器的過程中, 等待服務器響應時間過長, 易造成程序暫停, 系統假死現象。在與服務器的通信過程中采取了多線程的方式, 使用3 個線程, 分別負責消息發送、接收和心跳信息的發送。

  ( 4) 圖片傳輸。從文件系統中讀入圖片后, 將圖片轉換成". png"  的格式, 寫入到字節輸出流中。由于圖片信息相對于通信文本信息要大很多, 因此采用分組傳輸的方式, 對字節數組進行分組, 加密后, 分別嵌入到XML 語句中進行傳輸。接收圖片時, 將收到的各個子字符串轉換為字節數組并進行解密, 最后進行組合, 還原成原來的圖片, 供用戶瀏覽。

  ( 5) 音樂播放。音樂播放通過調用MediaPlayer實現的。Andro id 的Media Player 包含了Audio 和Video 的播放功能。MediaPlayer 在底層上是基于OpenCore( PaeketVideo ) 的庫實現的, 為了構建一個MediaPlay er 程序, 上層還包含基于Android 基本庫中的Binder 機制的進程間通訊等內容。

  ( 6) 圖片瀏覽。圖片瀏覽主要用android. Graphics類包實現, 這個類包提供了如畫布、點和矩形等底層圖形工具, 可直接的在屏幕上進行繪制。從文件系統中把所需要的圖片讀入到內存中, 轉化成" . png "的圖片格式, 然后在不同的用戶界面中, 使圖片以不同的形式顯示。

  4   結語

  近年來, Android 系統由于其開源性、易開發性得到廣泛的應用。移動通信的即時通信服務把手機的短信和手機移動互聯網完美地結合起來, 用戶通過移動設備終端, 能便捷地與他人進行實時信息交流。利用本設計方案, 可以實現在Andr oid 操作系統上完成即時通信系統客戶端的開發, 具有較大的發展、應用空間。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
一区二区三区视频观看| 黑人极品videos精品欧美裸| 西瓜成人精品人成网站| 在线观看日韩国产| 国产乱码精品一区二区三| 欧美成人情趣视频| 久久天天躁狠狠躁夜夜爽蜜月 | 亚洲三级观看| 激情综合在线| 午夜精品久久久| 欧美在线观看视频| 亚洲欧美日韩国产成人精品影院 | 欧美中日韩免费视频| 亚洲一区二区久久| 国产精品毛片大码女人| 欧美高清一区| 亚洲视屏在线播放| 欧美久久久久免费| 欧美日韩一二三四五区| 牛牛影视久久网| 欧美成人一区二免费视频软件| 免费毛片一区二区三区久久久| 久久综合色一综合色88| 麻豆免费精品视频| 欧美国产精品日韩| 欧美日韩免费| 欧美三级电影网| 国产精品一二一区| 欧美精品亚洲精品| 国产精品成人免费| 国产乱码精品一区二区三区av| 国产精品一区二区黑丝| 国产综合亚洲精品一区二| 国产日韩亚洲欧美综合| 国产一区二区三区久久精品| 国产一区二区三区久久精品| 在线播放亚洲| 国产精品萝li| 激情久久久久| 亚洲精品国产精品国自产观看| 99这里只有精品| 亚洲午夜精品在线| 欧美中文日韩| 亚洲美女视频网| 一区二区三区 在线观看视频| 亚洲欧美激情四射在线日| 亚洲欧美日韩系列| 久久性色av| 欧美日本一区二区高清播放视频| 欧美午夜视频一区二区| 国产日韩欧美二区| 亚洲电影欧美电影有声小说| 一区二区免费在线播放| 欧美一级免费视频| 亚洲精品综合久久中文字幕| 亚洲欧美欧美一区二区三区| 久久久久久999| 欧美日本亚洲| 国产亚洲第一区| 亚洲精品影院在线观看| 午夜精品999| 最近看过的日韩成人| 亚洲综合视频网| 老**午夜毛片一区二区三区| 欧美日韩免费高清| 国内外成人免费视频 | 亚洲另类在线一区| 亚洲欧美日韩第一区| 亚洲精品四区| 久久精品99国产精品日本| 欧美成人免费在线观看| 国产精品美女久久久浪潮软件| 国产伦精品一区二区三| 亚洲国产精品一区二区久| 亚洲一区图片| 99re6热只有精品免费观看| 久久国产精品久久久久久久久久 | 91久久夜色精品国产网站| 亚洲综合色在线| 亚洲免费不卡| 久久久久中文| 国产精品久久久久久久浪潮网站| 亚洲国产第一页| 欧美伊人影院| 亚洲女人小视频在线观看| 欧美成人国产| 国产一区二区三区不卡在线观看| 夜夜嗨av一区二区三区网站四季av| 欧美一站二站| 午夜亚洲福利| 欧美日韩18| 亚洲国产精品综合| 久久国产精品第一页| 午夜激情久久久| 欧美日韩一区在线| 亚洲国产午夜| 亚洲国产成人不卡| 久久九九电影| 国产免费成人av| 夜夜精品视频一区二区| 亚洲精品日韩综合观看成人91| 欧美一区二区三区久久精品| 欧美日韩三级在线| 亚洲精品人人| 91久久亚洲| 欧美99在线视频观看| 一区二区在线观看视频在线观看| 午夜精品久久久| 欧美一区二视频| 国产欧美精品日韩| 午夜精品久久久久影视| 亚洲欧美日韩中文在线制服| 欧美日韩亚洲高清一区二区| 亚洲国产裸拍裸体视频在线观看乱了中文 | 久久久久国产精品一区| 国产精品午夜av在线| 亚洲一区欧美激情| 午夜精品999| 国产精品日韩欧美综合 | 亚洲在线一区二区| 亚洲一区精品电影| 欧美视频一区在线| 亚洲最新中文字幕| 亚洲视频1区| 欧美午夜电影在线| 一区二区三区高清视频在线观看| 亚洲一区二区成人在线观看| 国产精品va在线播放| 亚洲一区二区三区涩| 欧美一级午夜免费电影| 国产日韩欧美黄色| 欧美在线视频在线播放完整版免费观看 | 亚洲一区二区三区精品动漫| 欧美日韩另类字幕中文| 亚洲清纯自拍| 宅男噜噜噜66一区二区66| 欧美日韩国产综合视频在线观看中文 | 一本色道久久综合亚洲精品小说| 中文av一区特黄| 欧美午夜大胆人体| 亚洲欧美网站| 久久久国际精品| 亚洲高清视频一区| 一区二区三区欧美激情| 欧美午夜精品久久久久久久| 亚洲私人黄色宅男| 欧美一级久久久久久久大片| 国产欧美韩日| 亚洲人成网站在线播| 欧美日韩dvd在线观看| 在线亚洲国产精品网站| 欧美一级精品大片| 在线播放日韩| 国产精品99久久久久久www| 国产精品视频成人| 欧美中日韩免费视频| 欧美激情第一页xxx| 亚洲色图在线视频| 久久久久久久网| 国产在线不卡视频| 亚洲精品中文字幕在线| 国产精品久久一卡二卡| 久久不射中文字幕| 欧美母乳在线| 亚洲欧美国产va在线影院| 麻豆精品视频在线| 亚洲国产一区在线| 亚洲欧美日韩国产成人精品影院| 国产深夜精品福利| 日韩网站在线观看| 国产精品无码永久免费888| 亚洲国产日韩一级| 欧美日韩精品欧美日韩精品| 小嫩嫩精品导航| 欧美一区二区免费视频| 国产精品久久久爽爽爽麻豆色哟哟| 伊伊综合在线| 亚洲午夜在线视频| 精品99视频| 亚洲欧美另类在线| 亚洲电影免费| 欧美在线视频一区二区三区| 亚洲国产经典视频| 欧美一区二区三区四区在线观看地址 | 99v久久综合狠狠综合久久| 国产精品一区二区男女羞羞无遮挡| 久久精品一区中文字幕| 欧美三日本三级少妇三2023| 久久精品成人一区二区三区| 欧美日韩一区二| 亚洲国产小视频| 国产精品入口尤物| 亚洲九九爱视频| 国产视频在线观看一区二区| 一区二区电影免费在线观看| 国产一区日韩欧美| 亚洲在线1234| 亚洲人体影院| 久久免费的精品国产v∧| 一本色道久久综合一区 |