android tcp udp
时间: 2023-08-02 22:16:48 浏览: 44
Android支持TCP和UDP协议。TCP协议是面向连接的,可靠的协议,用于传输大量数据和需要可靠传输的应用程序。UDP协议是无连接的,不可靠的协议,适用于需要快速传输的应用程序,如实时视频和音频流。
要在Android应用程序中使用TCP或UDP协议,您可以使用Java的Socket类。对于TCP协议,您可以使用Socket类和ServerSocket类来创建客户端和服务器端。对于UDP协议,您可以使用DatagramSocket类。
下面是一个简单的使用TCP协议的Android应用程序的示例代码:
```java
try {
Socket socket = new Socket("192.168.0.1", 8080); //创建客户端套接字并连接服务器
OutputStream outputStream = socket.getOutputStream();
outputStream.write("Hello, server!".getBytes()); //向服务器发送数据
InputStream inputStream = socket.getInputStream();
byte[] buffer = new byte[1024];
int length = inputStream.read(buffer); //从服务器接收数据
String response = new String(buffer, 0, length);
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
```
如果您要使用UDP协议,请使用DatagramSocket类。下面是一个简单的使用UDP协议的Android应用程序的示例代码:
```java
try {
DatagramSocket socket = new DatagramSocket(); //创建套接字
byte[] data = "Hello, server!".getBytes();
DatagramPacket packet = new DatagramPacket(data, data.length, InetAddress.getByName("192.168.0.1"), 8080);
socket.send(packet); //向服务器发送数据
byte[] buffer = new byte[1024];
DatagramPacket response = new DatagramPacket(buffer, buffer.length);
socket.receive(response); //从服务器接收数据
String message = new String(response.getData(), 0, response.getLength());
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
```