Android Java - соединение UDP - PullRequest
0 голосов
/ 04 октября 2018

Я не могу получить пакет после отправки, используя следующий код.Самое странное, что он работал нормально, и ничего не изменилось, но теперь выдает исключение (java.net.SocketTimeoutException: Тайм-аут приема).

StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
    StrictMode.setThreadPolicy(policy);

    try {
        DatagramSocket socket = new DatagramSocket();
        socket.setSoTimeout(5000);
        InetAddress local = InetAddress.getByName("X.X.X.X");

        byte[] sReceivedData = new byte[128];
        String messageData = "Hello world!";

        if (!messageData.contains("\r\n")) {
            messageData = messageData.replace("\n", "\r\n");
        }

        byte[] data = messageData.getBytes("ASCII");
        int msgLength = messageData.length();

        DatagramPacket packet = new DatagramPacket(data, msgLength, local, 5343);
        socket.send(packet);

        DatagramPacket receivedPacket = new DatagramPacket(sReceivedData, sReceivedData.length);
        socket.receive(receivedPacket);

        int bytesReceived = socket.getReceiveBufferSize();
        Log.e("bytesReceived: ", "" + bytesReceived);
    } catch (IOException ex) {
        Log.e("MainActivity", ex.getMessage());
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...