欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android中Socket通信的實(shí)現(xiàn)方法概述

 更新時(shí)間:2014年08月04日 10:26:04   投稿:shichen2014  
這篇文章主要介紹了Android中Socket通信的實(shí)現(xiàn)方法,很有實(shí)用價(jià)值,需要的朋友可以參考下

本文實(shí)例簡(jiǎn)述了Android中Socket通信的實(shí)現(xiàn)方法,具體內(nèi)容如下:

一、socket通信概述

通俗的來(lái)說(shuō)套接字(socket)是通信的基石,是支持TCP/IP協(xié)議的網(wǎng)絡(luò)通信的基本操作單元。它是網(wǎng)絡(luò)通信過(guò)程中端點(diǎn)的抽象表示,包含進(jìn)行網(wǎng)絡(luò)通信必須的五種信息:連接使用的協(xié)議,本地主機(jī)的IP地址,本地進(jìn)程的協(xié)議端口,遠(yuǎn)地主機(jī)的IP地址,遠(yuǎn)地進(jìn)程的協(xié)議端口。

應(yīng)用層通過(guò)傳輸層進(jìn)行數(shù)據(jù)通信時(shí),TCP會(huì)遇到同時(shí)為多個(gè)應(yīng)用程序進(jìn)程提供并發(fā)服務(wù)的問(wèn)題。多個(gè)TCP連接或多個(gè)應(yīng)用程序進(jìn)程可能需要通過(guò)同一個(gè)TCP協(xié)議端口傳輸數(shù)據(jù)。為了區(qū)別不同的應(yīng)用程序進(jìn)程和連接,許多計(jì)算機(jī)操作系統(tǒng)為應(yīng)用程序與TCP/IP協(xié)議交互提供了套接字(Socket)接口。應(yīng)用層可以和傳輸層通過(guò)Socket接口,區(qū)分來(lái)自不同應(yīng)用程序進(jìn)程或網(wǎng)絡(luò)連接的通信,實(shí)現(xiàn)數(shù)據(jù)傳輸?shù)牟l(fā)服務(wù)。

總之一句話,socket是對(duì)TCP/IP協(xié)議的封裝。

二、使用Socket步驟(client):

1、建立Socket(Tcp)連接

在Java中建立Socket連接是相當(dāng)容易的事情,使用類庫(kù)提供的Socket類就可以實(shí)現(xiàn)。

Socketclient=null; //表示客戶端
client=newSocket("localhost",5000);

2、發(fā)送數(shù)據(jù)

PrintStreamout=newPrintStream(socket.getOutputStream()); //發(fā)送數(shù)據(jù),PrintStream最方便

3、接收返回信息

buf=newBufferedReader(newInputStreamReader(socket.getInputStream()));; //一次性接收完成讀取Socket的輸入流,在其中讀出返回信息

4、關(guān)閉Socket

Socket.close();

三、補(bǔ)充:

Socketsever端(非多線程實(shí)現(xiàn))
ServerSocketserver=null; //定義ServerSocket類
Socketclient=null; //表示客戶端
PrintStreamout=null; //打印流輸出最方便
server=newServerSocket(8888); //服務(wù)器在8888端口上監(jiān)聽
System.out.println("服務(wù)器運(yùn)行,等待客戶端連接。");
client=server.accept(); //得到連接,程序進(jìn)入到阻塞狀態(tài)
Stringstr="helloworld"; //表示要輸出的信息
out=newPrintStream(client.getOutputStream());
out.println(str); //向客戶端輸出信息
client.close();
server.close();

相關(guān)文章

最新評(píng)論