Вопрос

I saw many pages, and try many advices, but still can't receive data via UDP on device (nexus 4). I work in my LAN, over wifi (3G is off).

I have a client, on PC (192.168.1.5) and consumer on Android device (192.168.1.3:54445)

Here is a client code:

    String string = "hello udp";
    DatagramSocket socket = null;

    try {
        address = InetAddress.getByName("192.168.1.3");
        socket = new DatagramSocket();

        DatagramPacket packet = new DatagramPacket(buf, buf.length, address, 54445);
        socket.send(packet);

Here is a consumer code:

    DatagramSocket socket = null;
    stop = false;

    InetAddress address = null;

    try {
        socket = new DatagramSocket(54445);
        while (!stop) {
            byte[] buffer = new byte[minBufSize];
            DatagramPacket packet = new DatagramPacket(buffer, buffer.length);
            socket.receive(packet);
            Log.d(this.getClass().getSimpleName(), String.valueOf(packet.getLength()));

Debugger stop on socket.receive(packet). Consumer work in AsyncTask.

Thank you!

Это было полезно?

Решение

It's my fault, at first check you router settings.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top