色yeye在线视频观看_亚洲人亚洲精品成人网站_一级毛片免费播放_91精品一区二区中文字幕_一区二区三区日本视频_成人性生交大免费看

當(dāng)前位置:首頁(yè) > 嵌入式培訓(xùn) > 嵌入式學(xué)習(xí) > 講師博文 > Android中基于TCP協(xié)議的網(wǎng)絡(luò)通信

Android中基于TCP協(xié)議的網(wǎng)絡(luò)通信 時(shí)間:2018-09-27      來(lái)源:未知

一、Android網(wǎng)絡(luò)簡(jiǎn)介

Android與服務(wù)器的通信方式主要有兩種,一種是Http通信,另一種是Socket通信。

HTTP通信:Android中內(nèi)置HttpClient,這樣可以發(fā)方便的發(fā)送Http請(qǐng)求并獲取Http響應(yīng),簡(jiǎn)化了與網(wǎng)站之間的交互。

Socket通信:Android還支持JDK本身的TCP、UDP網(wǎng)絡(luò)通信的API,可以使用Java中提供的ServerSocket、Socket類,來(lái)建立基于TCP/IP協(xié)議的網(wǎng)絡(luò)通信。(本章主要講解TCP協(xié)議編程的相關(guān)內(nèi)容)也可以使用DatagramSocket、Datagrampacket、MulticastSocket來(lái)建立基于UDP協(xié)議的網(wǎng)絡(luò)通信。

兩者的區(qū)別:兩者的大差異在于,Http連接使用的是“請(qǐng)求—響應(yīng)方式”,即在請(qǐng)求時(shí)建立連接通道,當(dāng)客戶端向服務(wù)器發(fā)送請(qǐng)求后,服務(wù)器端才能向客戶端返回?cái)?shù)據(jù)。而Socket通信則是在雙方建立起連接后就可以直接進(jìn)行數(shù)據(jù)的傳輸,在連接時(shí)可實(shí)現(xiàn)信息的主動(dòng)推送,而不需要每次由客戶端想服務(wù)器發(fā)送請(qǐng)求。

本文引用地址://www.einuk.cn/emb/Column/7502.html

二、TCP協(xié)議基礎(chǔ)

TCP/IP通信協(xié)議是一種可靠的網(wǎng)絡(luò)協(xié)議,它在通信的兩端各建立一個(gè)Socket,從而在通信的兩端形成網(wǎng)絡(luò)虛擬鏈路。Java使用Socket對(duì)象來(lái)代表兩端的通信接口,并通過(guò)Socket產(chǎn)生IO流來(lái)進(jìn)行通信。

IP協(xié)議是Internet上使用的一個(gè)關(guān)鍵協(xié)議,它的全稱是Internet Protocol,即Internet協(xié)議,通常簡(jiǎn)稱IP協(xié)議。通過(guò)使用IP協(xié)議,使Internet成為一個(gè)允許連接不同類型的計(jì)算機(jī)和不同操作系統(tǒng)的網(wǎng)絡(luò)。

要使兩臺(tái)計(jì)算機(jī)彼此之間進(jìn)行通信,必須使兩臺(tái)計(jì)算機(jī)使用同一種“語(yǔ)言”,IP協(xié)議只保證計(jì)算機(jī)能發(fā)送和接收分組數(shù)據(jù)。IP協(xié)議負(fù)責(zé)將消息從一個(gè)主機(jī)傳送到另一個(gè)主機(jī),消息在傳送的過(guò)程中被分割成一個(gè)個(gè)小包。

TCP協(xié)議被稱作一種端對(duì)端協(xié)議,這是因?yàn)樗鼮閮膳_(tái)計(jì)算機(jī)之間的連接起了重要作用:當(dāng)一臺(tái)計(jì)算機(jī)需要與另一臺(tái)遠(yuǎn)程計(jì)算機(jī)連接時(shí),TCP協(xié)議會(huì)讓它們建立一個(gè)連接:用于發(fā)送和接收數(shù)據(jù)的虛擬鏈路。

通過(guò)這種重發(fā)機(jī)制,TCP協(xié)議向應(yīng)用程序提供可靠地通信連接,使它能夠自動(dòng)適應(yīng)網(wǎng)上的各種變化,即使在Internet暫時(shí)出現(xiàn)堵塞的情況下,TCP也能夠保證通信的可靠。

雖然IP和TCP這兩個(gè)協(xié)議的功能不盡相同,也可以分開(kāi)單獨(dú)使用,但它們是在同一時(shí)期作為一個(gè)協(xié)議來(lái)設(shè)計(jì)的,并且在功能上也是互補(bǔ)的,只有兩者結(jié)合,才能保證Internet在復(fù)雜的環(huán)境下正常運(yùn)行,凡是要連接到Internet的計(jì)算機(jī),都必須同時(shí)安裝和使用這兩個(gè)協(xié)議,因此在實(shí)際中常把這兩個(gè)協(xié)議統(tǒng)稱為TCP/IP協(xié)議。

三、如何使用ServerSocket創(chuàng)建TCP服務(wù)器端:

Java中能接收其他通信實(shí)體連接請(qǐng)求的類是ServerSocket,ServerSocket對(duì)象用于監(jiān)聽(tīng)來(lái)自客戶端的Socket連接,若沒(méi)有連接則它將一直處于等待狀態(tài)。其中監(jiān)聽(tīng)來(lái)自客戶端請(qǐng)求的方法:Socket accept()。該方法若收到一個(gè)客戶端Socket的連接請(qǐng)求,該方法將返回一個(gè)與連接客戶端Socket對(duì)應(yīng)的Socket,否則將阻塞等待。代碼如:

ServerSocket socket = new ServerSocket(21300);

While(true){

Socket s = socket.accept();

}

四、使用Socket進(jìn)行通信

客戶端經(jīng)常使用Socket來(lái)連接到指定服務(wù)器,Socket類提供構(gòu)造器連接到指定遠(yuǎn)程主機(jī)和遠(yuǎn)程端口的構(gòu)造器,如:

Socket socket = new Socket(“192.168.1.11”,8000);

創(chuàng)建完畢Socket之后就可以進(jìn)行通信了。Socket提供了InputStream getInputStream()和OutputStream getOutputStream兩個(gè)方法來(lái)獲取輸入流和輸出流進(jìn)行數(shù)據(jù)的讀寫(xiě)操作。例如:

while(true){

Socket socket = serversocket.accept();

OutputStream os = socket.getOutputStream();

os.write(“你好,我是服務(wù)器”.getBytes(“utf-8”));

os.close();

socket.close();

}

此時(shí),就可以進(jìn)行服務(wù)器與客戶端的讀寫(xiě)操作了。但是考慮到簡(jiǎn)單C/S聊天室應(yīng)用的實(shí)現(xiàn),只了解這個(gè)是不夠的,需要加上多線程的才能使代碼變得完善。

上一篇:Qt For Android --手機(jī)上也可以跑Qt程序啦!

下一篇:配置Unity安卓開(kāi)發(fā)環(huán)境

熱點(diǎn)文章推薦
華清學(xué)員就業(yè)榜單
高薪學(xué)員經(jīng)驗(yàn)分享
熱點(diǎn)新聞推薦
前臺(tái)專線:010-82525158 企業(yè)培訓(xùn)洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠(yuǎn)見(jiàn)科技集團(tuán)有限公司 版權(quán)所有 ,京ICP備16055225號(hào)-5京公海網(wǎng)安備11010802025203號(hào)

回到頂部

主站蜘蛛池模板: 最新av在线资源网无码 | 草色网 | 九色丨PORNY丨自拍 ICU | 国产女厕偷窥系列在线视频 | 欧美一级毛片免费网站 | 国产精品无码素人福利 | 性做久久久久久久久 | 免费看三片在线播放 | 日韩人妻无码精品专区综合网 | 麻豆hd | 欧美人与动牲交a欧美精品 亚洲AV无码成人精品区在线观看 | 天天躁日日躁狠狠躁婷婷 | 亚洲欧美中文日韩v在线观看 | 国产精品美女一区二区视频 | 少妇的肉体AA片免费观看 | 国产二区交换配乱婬 | 大胸少妇午夜三级 | gogogo高清免费观看中国 | 奇米四色7777中文字幕 | 久久99精品久久久久久hb | 亚洲AV久久久噜噜噜熟女软件 | аⅴ资源中文在线天堂 | 国产综合精品女在线观看 | 狠狠色丁香婷婷久久综合不卡 | 性俄罗斯xxxxx| 久久久国产精品ⅴa麻豆ai换脸 | 精品无码久久午夜福利 | 国产麻豆91| 无码午夜福利免费区久久 | 131美女视频黄的免费 | 亚韩无码一区二区在线视频 | 日本熟妇色xxxxx| 毛色毛片免费观看 | AV 日韩 人妻 黑人 综合 无码 | 邻居少妇张开腿让我爽了在线观看 | 800av免费观看 | 精品久久久无码专区中文字幕 | 一区精 | 欧美a级v片在线观看 | 国产欧美日韩精品专区 | 特黄男女交性A片激情视频 免费SM羞辱调教视频在线观看 |