Android Recibe transmisión UDP de la aplicación de escritorio C#a través de LAN?
broadcast (1)
Estoy tratando de crear una aplicación de corte en la PC para muchos dispositivos Android que usan la misma red wi-fi. Los dispositivos encontrarán la IP del servidor recibiendo la transmisión UDP desde allí que contiene los datos IP del servidor. Empecé creando un receptor de muestra udp en el receptor C # y udp en Java pero nunca logré obtener el paquete en el lado de Android. aquí está el código:
DO#:
UdpClient listener = new UdpClient(listenPort);
IPEndPoint groupEP = new IPEndPoint(IPAddress.Broadcast, listenPort);
listener.Connect(groupEP);
listener.EnableBroadcast = true;
byte[] data = new byte[1024];
try
{
while (!done)
{
Console.WriteLine("broadcast");
Thread.Sleep(400);
listener.Send(data,2);
}
Código de Android:
DatagramSocket socket;
try {
socket = new DatagramSocket(11000);
socket.connect(getBroadcastAddress(), 11000);
socket.setBroadcast(true);
byte[] buf = new byte[4];
DatagramPacket packet = new DatagramPacket(buf, buf.length);
socket.receive(packet);
El Permiso de Internet está configurado correctamente en el manifiesto. todavía no puede recibir los paquetes.
Sugerencias:
Asegúrate de que no tienes ningún firewall (software o hardware) que te bloquee
Considera usar Wireshark:
Mira este ejemplo: