通过路由器连接两台Android设备

通过路由器连接两台Android设备,android,Android,我想将数据从一个安卓设备发送到另一个安卓设备,该设备通过wifi连接到同一路由器? 两台设备上都安装了相同的应用程序,我希望它们通过wifi连接到同一路由器进行通信 将套接字连接与UDP、TCP或HTTP协议中的任何一种协议一起使用 使用UDP发送消息 接收UDP消息 我也对在无线网络连接的两台设备之间发送数据感兴趣,所以我做了一个快速搜索,在下面找到了另一个答案 如果你的设备在同一个平台上,Android无线API也可以工作 本地网络,即使用相同的WiFi路由器 套接字是实现这一点的方法 您需

我想将数据从一个安卓设备发送到另一个安卓设备,该设备通过wifi连接到同一路由器?
两台设备上都安装了相同的应用程序,我希望它们通过wifi连接到同一路由器进行通信

将套接字连接与UDP、TCP或HTTP协议中的任何一种协议一起使用

使用UDP发送消息

接收UDP消息


我也对在无线网络连接的两台设备之间发送数据感兴趣,所以我做了一个快速搜索,在下面找到了另一个答案

如果你的设备在同一个平台上,Android无线API也可以工作 本地网络,即使用相同的WiFi路由器


套接字是实现这一点的方法

您需要一种方法来发现要连接到的套接字的ip地址和端口。您可以使用Android网络服务发现


你可以找到一个关于如何构建这样一个应用程序的完整教程

请不要只回答链接。看看你的链接,这个问题看起来像是重复的-这意味着这个问题应该被标记为重复的,而不是被回答我知道你不能这么做只是@FlorianKoch的可能重复我们使用了Wi-Fi点对点?请澄清,我不确定你的意思。另一个问题的答案还包括有关通过路由器连接的信息,而不仅仅是直接连接,请参阅
String messageStr="Hello Android!";
int server_port = 12345;
DatagramSocket s = new DatagramSocket();
InetAddress local = InetAddress.getByName("192.168.1.102");
int msg_length=messageStr.length();
byte[] message = messageStr.getBytes();
DatagramPacket p = new DatagramPacket(message,msg_length, local,server_port);
s.send(p);
String text;
int server_port = 12345;
byte[] message = new byte[1500];
DatagramPacket p = new DatagramPacket(message, message.length);
DatagramSocket s = new DatagramSocket(server_port);
s.receive(p);
text = new String(message, 0, p.getLength());
Log.d("Udp tutorial","message:" + text);
s.close();