2013-12-03 4 views
0

Привет, в настоящее время я создаю UDP-соединение для моей программы, в настоящее время его localhost, как я собираюсь вставить мой IP-адрес, чтобы другой компьютер в той же сети смог получить сообщение типа i на сервере боковая сторона.Android UDP socket

UDPSERVER 
package testing; 

import java.io.*; 
import java.net.*; 
public class UdpServer { 

    public static void main(String args[]) { 
     String str; 
     try { 
      BufferedReader Br; 
      Br = new BufferedReader(new InputStreamReader(System. in)); 
      DatagramSocket Sock; 
      Sock = new DatagramSocket(1000); 
      DatagramPacket Dp; 
      System.out.println("Enter the data..... Enter 'exit' to stop"); 
      while (true) { 
       str = Br.readLine(); 
       Dp = new DatagramPacket(str.getBytes(), str.length(), 
        InetAddress.getByName("localhost"), 2000); 
       Sock.send(Dp); 
       if (str.equals("exit")) break; 
      } 
      Sock.close(); 
     } catch (Exception e) {} 
    } 
} 

UdpClient 
package testing; 
import java.net.*; 
public class UdpClient { 
    public static void main(String arg[]) { 
     String str; 
     DatagramSocket Sock; 
     DatagramPacket Dp; 
     try { 
      Sock = new DatagramSocket(2000); 
      byte Buff[] = new byte[1024]; 
      System.out.println("Client ready..."); 
      while (true) { 
       Dp = new DatagramPacket(Buff, 1024); 
       Sock.receive(Dp); 
       str = new String(Dp.getData(), 0, Dp.getLength()); 
       System.out.println(str); 
       if (str.equals("exit")) break; 
      } 
      Sock.close(); 
     } catch (Exception e) { 
      System.out.println("Connection failure..."); 
     } finally { 
      System.out.println("Server Disconnected..."); 
     } 
    } 
} 

ответ

0

Первым шагом является попытка и жесткий код ip другого компьютера и тест. Если это работает, посмотрите на добавление UDP Broadcast Discovery. Вот пример в java: http://michieldemey.be/blog/network-discovery-using-udp-broadcast/

Идея состоит в том, что все устройства, которым нужно говорить, транслируются по UDP. Как только они услышат трансляцию, им нужно подключиться к друг другу. Обычно одна сторона должна быть предварительно определена как сервер, а другая - как клиент.