Android socket 開發之旅

2021-06-12 02:31:36 字數 1330 閱讀 4728

這段時間以來,由於乙個專案,輾轉於android的socket 程式設計,倍加煩惱。特編寫寫此文以記.

1、socket原理

2、兩種連線方式的區別

3、tcp簡單socket通訊

4、與gps伺服器的socket通訊

2、android socket程式設計分為tcp與udp兩種建立連線的方式。

一、udp方式

接收方建立步驟:

1.  建立乙個datagramsocket物件,並指定監聽的埠號

datagramsocket socket = new  datagramsocket (4567);

2. 建立乙個byte陣列用於接收

byte data = new byte[1024];

3. 建立乙個空的datagrampackage物件

datagrampackage package = new datagrampackage(data , data.length);

4. 使用receive方法接收傳送方所傳送的資料,同時這也是乙個阻塞的方法

socket.receive(package); 

5. 得到傳送過來的資料

new string(package.getdata() , package.getoffset() , package.getlength());

傳送方建立步驟:

1.  建立乙個datagramsocket物件

datagramsocket socket = new  datagramsocket (4567);

2.  建立乙個 inetaddress , 相當於是位址

inetaddress serveraddress = inetaddress.getbyname("想要傳送到的那個ip位址"); 

3.  這是隨意傳送乙個資料

string str = "hello";

4.  轉為byte型別

byte data = str.getbytes();

5.  建立乙個datagrampacket 物件,並指定要講這個資料報傳送到網路當中的哪個位址,以及埠號

datagrampacket  package = new datagrampacket (data , data.length , serveraddress , 4567);

6.  呼叫datagramsocket物件的send方法 傳送資料

socket . send(package);

二、tcp方式

參考文獻:1.

Android Socket程式設計開發入門

1 socket通訊模型如下 應用程式通過套接字可以進行通訊,可以使用udp協議或者使用tcp協議 當客戶端和伺服器端的協議時相對應的,客戶端使用tcp,那麼伺服器端使用tcp 2 udp協議 把資料打包成資料報,然後直接傳送對應的ip位址,速度快,但是不保證 成功率,並且資料大小有限 tcp協議 ...

Android Socket程式設計

android socket程式設計 建立伺服器的步驟 1.指定埠例項化乙個serversocket。2.呼叫serversocket的accept 以在等待連線期間造成阻塞。3.獲取位於該底層socket的流以進行讀寫操作。4.將資料封裝成流。5.對scoket進行讀寫。6.關閉開啟流。注意 不要...

Android socket程式設計

socket分為兩種 udp和tcp 特點 1.資料要進行打包傳送。2.資料的大包大小有限制 3.面向無連線 4.安全性低不可靠 5.速度快 使用場景 qq群聊 如下 傳送端 public class sendsocket byte bytes line.getbytes 第二步將資料大包,資料報裡...