999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Socket的Android聊天室系統設計與實現

2014-08-07 12:08:22胡晶晶
微處理機 2014年4期
關鍵詞:用戶系統

胡晶晶

(湖南生物機電職業技術學院,長沙410126)

基于Socket的Android聊天室系統設計與實現

胡晶晶

(湖南生物機電職業技術學院,長沙410126)

Android是一種基于Linux V2.6內核的自由及開放源代碼的智能手機操作平臺;Socket是一種網絡編程接口。介紹了Android基于Socket的通信機制,建立了一個基于Socket的Android聊天室系統。其中Android平臺的手機作為客戶端,PC作為服務器端。該系統能夠實現登錄、注冊、公聊、私聊、文件傳送等功能。

套接字Socket;安卓Android;聊天室;客戶端;服務器

1 引 言

Android是一種基于Linux V2.6內核的自由及開放源代碼的操作系統,主要用于移動設備。隨著移動互聯網的迅猛發展,Android已占據全球智能手機操作系統市場 3/4以上的份額。聊天室是Android手機不可或缺的網絡通信應用程序之一,而Socket機制是一種API,是進行網絡通信編程的接口。介紹了Android基于Socket的通信機制,建立了一個基于Socket的Android聊天室系統,提出了在C/S模式下用Socket實現Android聊天室系統的解決方案。

2 Android系統架構

Android是一個分層的系統架構,構建在Linux內核基礎上。Android分為四個層次,從高層到低層分別是應用程序層、應用程序框架層、系統運行庫層和Linux內核層。Android軟件層次結構如圖1所示。Android在其核心庫的java包中,提供了用于客戶端的Socket類和用于服務器端的ServerSocket類。

圖1 Android軟件層次結構圖

3 Android基于Socket的通信機制

Android與服務器的通信方式主要有兩種,一是Http通信,二是Socket通信。兩者的最大差異在于,http連接使用的是“請求—響應方式”,即在請求時建立連接通道,當客戶端向服務器發送請求后,服務器端才能向客戶端返回數據。而Socket通信則是在雙方建立起連接后就可以直接進行數據傳輸,在連接時可實現信息的主動傳送,而不需要每次由客戶端向服務器發送請求。通過建立Socket連接,可為通信雙方的數據傳輸提供通道。Socket的主要特點有數據丟失率低,使用簡單且易于移植。

根據傳輸數據類型的不同,Socket主要分為三類:①流式Socket(SOCK_STREAM),在這種方式下,兩個通訊的應用程序之間要先建立一種虛擬連接,提供可靠的、面向連接的通信流,它使用TCP協議從而保證了數據傳輸的正確性和有序性。②數據報Socket(SOCK_DGRAM),它使用數據報協議UDP,定義了一種無連接服務,數據通過相互獨立的報文進行傳輸,是無序的,并且不保證可靠、無差錯。③原始Socket,原始套接字允許對底層協議如IP或ICMP直接訪問,它功能強大但使用較為不便,主要用于一些協議的開發。

以下采用的是基于TCP協議的流式Socket方式。其通信機制框圖見圖2。

4 聊天室系統設計

聊天室系統由兩個部分組成:PC服務器端和Android手機客戶端。服務器端主要完成用戶信息的存儲、客戶端命令的接收與響應以及信息轉發等服務器端應有的功能。客戶端主要完成聊天信息的發送與接收、用戶登錄、注冊以及文件傳送等功能。

4.1 服務器端

服務器端的工作過程如下:

1)根據服務端的IP和PORT創建一個Server-Socket

2)調用ServerSocket.accept()方法監聽客戶端的連接

3)根據Socket創建InputStream對象和Output-Stream對象

4)調用InputStream.readUTF()或Output-Stream.writeUTF()與客戶端通信

5)循環上述過程,不斷監聽客戶端的連接

4.2 客戶端

客戶端的工作過程如下:

1)根據IP和PORT創建Socket對象,用于連接服務器

2)根據Socket創建InputStream對象和Output-Stream對象

3)調用這兩個對象和服務端通信

4)關閉InputStream和OutputStream

5)關閉Socket

5 聊天室具體實現

5.1 服務器端實現

服務器端程序一共包括四個類,其名稱及功能如下:

Server.java:服務器端主程序,負責界面,以及服務端主程序ServerThread的啟動,服務端主程序ServerThread又產生BroadCaset及ClientThread線程。

BroadCast.java:服務器向客戶端廣播線程,負責向客戶端發送消息。

ClientThread.java:維持服務器與單個客戶端的連接線程,負責接收客戶端發來的信息。

ServerThread.java:服務器監聽端口線程,負責創建服務器端ServerSocket以及監聽是否有新客戶端連接,并且記錄客戶端連接以及需要發送的信息。

5.2 客戶端實現

用戶登錄和注冊的主要類:

MainActivity和MyRegisteActivity類,前一個主要實現用戶登錄,后一個主要實現用戶注冊。

用戶實現私聊和群聊:

MyChatActivity和ChatEveryActivity類

用戶之間傳送和接收文件:

MyFileActivity、NetTcpFileSendThread和NetTcp-FileReceiveThread類

6 結束語

介紹了Android基于Socket的通信機制,建立了一個基于Socket的Android聊天室系統。該系統能夠實現用戶注冊、登錄、公共聊天、私人聊天以及文件傳送等功能。

[1]胡晶晶.基于Java Socket的聊天室系統設計與設計[J].微處理機,2010(5):66-67.

[2]Elliotte Rusty Harold.JAVA網絡編程(第3版)[M].朱濤江,林劍譯.北京:中國電力出版社,2005:283-390.

[3]林少丹.移動終端應用開發技術——Android實戰[M].北京:機械工業出版社,2013:1-176.

Design and Im plement of Android Chat System Based on Socket

HU Jing-jing
(Hunan Biological and Electro-mechanical Polytechnic,Changsha 410126,China)

Android is a smart-phone operating platform based on Linux V2.6 kernel,which is free and has open source code,and socket is a network programming interface.This paper introduces themechanism of Android communications based on Socket API,and designs an Android chat system based on Socket.In this system,the phoneswith Android platform are used as clients and a PC as a server,and the functions of login,registration,public chatting,private chatting,file transfer and so on are conducted aswell.

Socket;Android;Chat System;Client;Server

10.3969/j.issn.1002-2279.2014.04.016

TP393

:A

:1002-2279(2014)04-0050-02

胡晶晶(1967-),女,湖南株洲人,碩士,副教授,主研方向:計算機軟件、信息安全、信息隱藏。

2013-12-30

猜你喜歡
用戶系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
主站蜘蛛池模板: 色婷婷狠狠干| 国产性精品| 日本免费精品| 亚洲天堂免费| a毛片免费在线观看| 亚国产欧美在线人成| 国产精品自拍露脸视频| 日本不卡视频在线| 国产成人精品高清不卡在线| 国产精品欧美在线观看| 91精品国产麻豆国产自产在线| 日韩国产亚洲一区二区在线观看| 多人乱p欧美在线观看| 熟女视频91| 免费一极毛片| 日韩精品亚洲一区中文字幕| 亚洲高清中文字幕在线看不卡| 日韩资源站| 好吊色妇女免费视频免费| 亚洲性视频网站| 成人伊人色一区二区三区| 99re免费视频| 亚洲中文字幕国产av| a级毛片视频免费观看| 五月婷婷导航| 国产白浆在线| 午夜激情福利视频| 国产av一码二码三码无码| Jizz国产色系免费| 无码啪啪精品天堂浪潮av| 综合色区亚洲熟妇在线| 91成人免费观看在线观看| 久久亚洲日本不卡一区二区| 色综合激情网| 精品久久久久无码| 99精品视频播放| 国产乱视频网站| 亚洲色欲色欲www网| 在线免费观看a视频| 2021国产在线视频| 精品久久高清| 19国产精品麻豆免费观看| 中文国产成人精品久久| 亚洲无码在线午夜电影| 日日拍夜夜操| 伊人丁香五月天久久综合| 为你提供最新久久精品久久综合| 午夜啪啪福利| 在线免费a视频| 精品久久香蕉国产线看观看gif| 永久免费av网站可以直接看的| 亚洲六月丁香六月婷婷蜜芽| 综合久久五月天| 国产精品永久不卡免费视频| 无码中文字幕精品推荐| 欧美日韩久久综合| 成人免费网站在线观看| 一级爱做片免费观看久久 | 九九九精品成人免费视频7| 亚洲高清日韩heyzo| 91精品最新国内在线播放| 中国国产A一级毛片| 欧美日本在线| 亚洲日韩精品综合在线一区二区| 丁香婷婷久久| 无码人妻热线精品视频| 一本大道视频精品人妻| 成人午夜免费观看| 欧美69视频在线| 波多野结衣的av一区二区三区| 欧亚日韩Av| 精品偷拍一区二区| 天天色天天操综合网| 中文字幕在线永久在线视频2020| 日韩一级二级三级| 久久精品无码一区二区国产区| 国产午夜看片| 亚洲中文字幕无码爆乳| 久久一色本道亚洲| 在线欧美一区| 亚洲人成网18禁| 亚洲欧洲自拍拍偷午夜色|