gpt4 book ai didi

java - 在 Android 模拟器上创建 UDP 连接

转载 作者:太空宇宙 更新时间:2023-11-04 11:49:41 25 4
gpt4 key购买 nike

我正在尝试使用 Android Studio 及其模拟器在给定端口上创建一个简单的 UDP 连接。我能够通过 Eclipse 的线程中运行的客户端/服务器来完成这项工作。

但是,当将代码移植到android中时,打开的端口是TCP。

下面是android代码:

@Override
public void run() {
// Perform our network ops in this loop, anything blocking really...

try {
Log.d(TAG, "UDP Connecting to " + HOST + " on port " + PORT);
datagramSocket = new DatagramSocket();

String host = "localhost";
InetAddress address = InetAddress.getByName(host);

byte[] message = "UDP is da best".getBytes();
DatagramPacket packet = new DatagramPacket(message, message.length, address, PORT);

datagramSocket.send(packet);

byte[] buffer = new byte[65536];
DatagramPacket incoming = new DatagramPacket(buffer, buffer.length);

while (true) {
datagramSocket.receive(incoming);
byte[] data = incoming.getData();
String s = new String(data, 0, incoming.getLength());

Log.d(TAG, "Client: " + incoming.getAddress().getHostAddress() + " : " + incoming.getPort() + " - " + s);

Thread.sleep(500);

DatagramPacket dp = new DatagramPacket(s.getBytes() , s.getBytes().length , incoming.getAddress() , PORT);
datagramSocket.send(dp);
}
} catch (Exception e) {
Log.d(TAG, e.toString());
}

}

这段代码几乎取自 here

这是作为 TCP 创建的端口的图片:

最佳答案

问题已解决,首先更改端口,因为 5555 正在使用中,而 127.0.0.1 也不是要使用的 IP,使用 10.0.2.2 让我连接,一切顺利

关于java - 在 Android 模拟器上创建 UDP 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41971814/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com