国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android socket實現原理詳解 服務端和客戶端如何搭建

2019-12-12 02:17:24
字體:
來源:轉載
供稿:網友

本文實例為大家分享了Android socket的實現原理,供大家參考,具體內容如下

Socket套接字

是網絡上具有唯一標識的IP地址和端口號組合在一起才能構成唯一能識別的標識符套接字。

socket實現的原理機制:

1、通信的兩端都有Socket

2、網絡通信其實就是Socket間的通信

3、數據在兩個Socket間通過IO傳輸

建立Socket(客戶端)和ServerSocket(服務器端)

建立連接后,通過Socket中的IO流進行數據的傳輸

關閉socket

同樣,客戶端與服務器端是兩個獨立的應用程序。

服務器端思路

1、建立服務器端的socket服務,需要一個端口
2、服務端沒有直接的操作,而是通過accept方法獲取客戶端對象,在通過獲取到的客戶端對象的流和客戶端進行通信
3、通過客戶端獲取流對象的方法,讀取數據或者寫入數據
4、如果服務完成,需要關閉客戶端,然后關閉服務器,但是,一般會關閉客戶端,不會關閉服務器,因為服務端是一直提供服務的

服務端實現代碼

// 創建服務器端    ServerSocket server = new ServerSocket(5555);    while(true){    // 等待連接    Socket accept = server.accept();    OutputStream outputStream = accept.getOutputStream();    outputStream.write("你好,我是服務器!/r/n".getBytes());    outputStream.flush();    // 讀取數據    InputStream inputStream = accept.getInputStream();    BufferedReader reader = new BufferedReader(new InputStreamReader(        inputStream));    System.out.println("服務器:" + reader.readLine());     outputStream.close();     inputStream.close();    }

客戶端思路

1、建立客戶端的Socket服務,并明確要連接的服務器。
2、如果連接建立成功,就表明,已經建立了數據傳輸的通道.就可以在該通道通過IO進行數據的讀取和寫入.該通道稱為Socket流,Socket流中既有讀取流,也有寫入流.
3、通過Socket對象的方法,可以獲取這兩個流
4、通過流的對象可以對數據進行傳輸
5、如果傳輸數據完畢,關閉資源

客戶端實現代碼

 //創建套接字 確定要連接的服務器ip與端口口    Socket socket=new Socket("172.17.23.77",5555);    InputStream inputStream = socket.getInputStream();    BufferedReader br=new BufferedReader(new InputStreamReader(inputStream));    String readLine = br.readLine();    System.out.println("客戶端:"+readLine);    //向服務器發送消息    OutputStream outputStream = socket.getOutputStream();    outputStream.write("你好/r/n".getBytes());    outputStream.flush();    outputStream.close();    inputStream.close();

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 贵定县| 饶阳县| 阿图什市| 睢宁县| 博湖县| 遂昌县| 固阳县| 北碚区| 清水河县| 乐陵市| 通渭县| 扎囊县| 屏东县| 陇西县| 寿阳县| 文安县| 千阳县| 镇康县| 桑日县| 隆化县| 琼中| 色达县| 青岛市| 白沙| 山阴县| 穆棱市| 安康市| 天祝| 井陉县| 榕江县| 万荣县| 大同县| 兴海县| 南和县| 潼关县| 阿巴嘎旗| 樟树市| 都江堰市| 腾冲县| 昌图县| 连平县|